اندروید 16 ویژگی ها و API های جدید و عالی را برای توسعه دهندگان معرفی می کند. بخشهای زیر این ویژگیها را خلاصه میکنند تا به شما در شروع کار با APIهای مرتبط کمک کنند.
همچنین باید مناطقی را که تغییرات پلتفرم ممکن است بر برنامههای شما تأثیر بگذارد، مرور کنید. برای اطلاعات بیشتر به صفحات زیر مراجعه کنید:
- تغییرات رفتاری که برنامهها را با هدف قرار دادن Android 16 تحت تأثیر قرار میدهد
- تغییرات رفتاری که بر همه برنامهها بدون توجه به
targetSdkVersion
تأثیر میگذارد .
عملکرد اصلی
اندروید شامل API های جدیدی است که قابلیت های اصلی سیستم اندروید را گسترش می دهد.
دو API اندروید در سال 2025 منتشر شد
- این پیش نمایش برای نسخه اصلی بعدی اندروید با راه اندازی برنامه ریزی شده در سه ماهه دوم سال 2025 است. این نسخه مشابه همه نسخه های API ما در گذشته است، جایی که می توانیم تغییرات رفتاری برنامه ریزی شده ای داشته باشیم که اغلب به یک targetSdkVersion گره خورده است.
- ما در حال برنامهریزی نسخه اصلی یک ربع زودتر (به جای Q3 در سالهای قبل) هستیم تا با برنامه زمانبندی راهاندازی دستگاهها در سراسر اکوسیستم خود هماهنگی بیشتری داشته باشیم، بنابراین دستگاههای بیشتری بتوانند زودتر نسخه اصلی Android را دریافت کنند. با انتشار اصلی در سه ماهه دوم، باید آزمایش سازگاری سالانه خود را چند ماه زودتر از سالهای گذشته انجام دهید تا مطمئن شوید برنامههایتان آماده هستند.
- ما قصد داریم در سه ماهه چهارم سال 2025 نسخه دیگری داشته باشیم که شامل API های توسعه دهندگان جدید نیز می شود. نسخه اصلی Q2 تنها نسخه در سال 2025 خواهد بود که شامل تغییرات رفتاری برنامه ریزی شده است که می تواند برنامه ها را تحت تأثیر قرار دهد.
علاوه بر APIهای توسعهدهنده جدید، نسخه جزئی Q4 بهروزرسانیها، بهینهسازیها و رفع اشکالها را در اختیار خواهد داشت. این شامل هیچ گونه تغییر رفتاری تأثیرگذار بر برنامه نخواهد بود.
ما به انتشار سه ماهه اندروید ادامه خواهیم داد. بهروزرسانیهای Q1 و Q3 بین نسخههای API بهروزرسانیهای افزایشی را برای اطمینان از کیفیت مداوم ارائه میدهند. ما فعالانه با شرکای دستگاه خود کار می کنیم تا نسخه Q2 را تا حد امکان به دستگاه های بیشتری ارائه کنیم.
استفاده از API های جدید با نسخه های اصلی و فرعی
محافظت از بلوک کد با بررسی سطح API امروز با استفاده از ثابت SDK_INT
با VERSION_CODES
انجام می شود. این همچنان برای نسخه های اصلی اندروید پشتیبانی می شود.
if (SDK_INT >= VERSION_CODES.BAKLAVA) {
// Use APIs introduced in Android 16
}
ثابت جدید SDK_INT_FULL
می تواند برای بررسی های API در برابر هر دو نسخه اصلی و فرعی با شمارش جدید VERSION_CODES_FULL
استفاده شود.
if (SDK_INT_FULL >= VERSION_CODES_FULL.[MAJOR or MINOR RELEASE]) {
// Use APIs introduced in a major or minor release
}
همچنین میتوانید از متد Build.getMinorSdkVersion()
برای دریافت نسخه کوچک SDK استفاده کنید.
val minorSdkVersion = Build.getMinorSdkVersion(VERSION_CODES_FULL.BAKLAVA)
این API ها هنوز نهایی نشده اند و در معرض تغییر هستند، بنابراین لطفاً در صورت داشتن هر گونه نگرانی، بازخورد خود را برای ما ارسال کنید.
تجربه کاربری و رابط کاربری سیستم
اندروید 16 به توسعه دهندگان و کاربران برنامه کنترل و انعطاف بیشتری برای پیکربندی دستگاه خود برای مطابقت با نیازهایشان می دهد.
به روز رسانی های پیش بینی کننده
Android 16 API های جدیدی را اضافه می کند تا به شما کمک کند انیمیشن های سیستمی پیش بینی کننده را در جهت یابی حرکتی مانند انیمیشن بازگشت به خانه فعال کنید. ثبت کردن onBackInvokedCallback
با PRIORITY_SYSTEM_NAVIGATION_OBSERVER
جدید به برنامه شما امکان میدهد هر زمان که سیستم یک پیمایش برگشتی را انجام میدهد، بدون تأثیر بر جریان ناوبری عادی، تماس معمولی onBackInvoked
دریافت کند.
اندروید 16 علاوه بر این finishAndRemoveTaskCallback()
و moveTaskToBackCallback
را اضافه می کند. با ثبت این تماسهای برگشتی با OnBackInvokedDispatcher
، سیستم میتواند رفتارهای خاصی را فعال کند و در هنگام فراخوانی ژست بازگشت، انیمیشنهای مربوطه را پخش کند.
لمسی غنی تر
اندروید از زمان آغاز به کار کنترل بر روی محرک لمسی را در معرض دید قرار داده است.
Android 11 از جلوههای لمسی پیچیدهتر پشتیبانی میکند که محرکهای پیشرفتهتر میتوانند از طریق VibrationEffect.Compositions
پشتیبانی کنند. ترکیبهایی از مفاهیم اولیه معنایی تعریفشده توسط دستگاه.
Android 16 API های لمسی را اضافه می کند که به برنامه ها اجازه می دهد منحنی های دامنه و فرکانس یک اثر لمسی را تعریف کنند و در عین حال تفاوت های بین قابلیت های دستگاه را حذف کنند.
عملکرد و باتری
Android 16 API هایی را معرفی می کند که به جمع آوری اطلاعات در مورد برنامه های شما کمک می کند.
پروفایل ایجاد شده توسط سیستم
ProfilingManager
در اندروید 15 اضافه شد و به برنامهها امکان درخواست جمعآوری دادههای پروفایل با استفاده از Perfetto در دستگاههای عمومی در این زمینه را میدهد. با این حال، از آنجایی که این نمایهسازی باید از برنامه شروع شود، دریافت جریانهای حیاتی مانند راهاندازیها یا ANR برای برنامهها دشوار یا غیرممکن است.
برای کمک به این امر، اندروید 16 پروفایل سیستمی را به ProfilingManager
معرفی می کند. برنامهها میتوانند علاقه خود را به دریافت ردیابی برای محرکهای خاصی مانند گزارش شروع سرد reportFullyDrawn
یا ANR ثبت کنند و سپس سیستم یک ردیابی را از طرف برنامه شروع و متوقف کند. پس از تکمیل ردیابی، نتایج به فهرست داده های برنامه تحویل داده می شود.
کامپوننت را در ApplicationStartInfo شروع کنید
ApplicationStartInfo
در Android 15 اضافه شد و به برنامه اجازه میدهد دلایل شروع فرآیند، نوع شروع، زمان شروع، throttling و سایر دادههای تشخیصی مفید را ببیند. Android 16 getStartComponent()
را برای تشخیص اینکه چه نوع مؤلفهای شروع به کار کرده است اضافه میکند، که میتواند برای بهینهسازی جریان راهاندازی برنامه شما مفید باشد.
درون نگری شغلی بهتر
API JobScheduler#getPendingJobReason()
دلیلی برای معلق بودن یک کار برمی گرداند. با این حال، یک کار ممکن است به دلایل متعدد در انتظار باشد.
در اندروید 16، یک API جدید JobScheduler#getPendingJobReasons(int jobId)
معرفی میکنیم که دلایل متعددی را برای معلق بودن یک کار، به دلیل محدودیتهای صریح توسط توسعهدهنده و محدودیتهای ضمنی تعیینشده توسط سیستم، برمیگرداند.
ما همچنین JobScheduler#getPendingJobReasonsHistory(int jobId)
را معرفی می کنیم که لیستی از آخرین تغییرات محدودیت را برمی گرداند.
توصیه میکنیم از API برای کمک به رفع اشکالزدایی کنید که چرا ممکن است کارهایتان اجرا نشوند، بهویژه اگر شاهد کاهش نرخ موفقیت در برخی کارها هستید یا اشکالاتی در مورد تأخیر تکمیل کار خاص دارید. به عنوان مثال، بهروزرسانی ویجتها در پسزمینه انجام نشد یا کار واکشی پیش از شروع برنامه فراخوانی نشد.
این همچنین میتواند به شما کمک کند تا بفهمید که آیا کارهای خاصی به دلیل محدودیتهای تعریفشده سیستم در مقابل محدودیتهای مشخص شده تکمیل نمیشوند یا خیر.
نرخ تازه سازی تطبیقی
نرخ تازه سازی تطبیقی (ARR) که در اندروید 15 معرفی شد، نرخ تازه سازی نمایشگر را در سخت افزار پشتیبانی شده قادر می سازد تا با استفاده از مراحل گسسته VSync، با نرخ فریم محتوا سازگار شود. این امر مصرف برق را کاهش می دهد و در عین حال نیاز به تغییر حالت بالقوه تحریک کننده jank را از بین می برد.
اندروید 16 همزمان با بازیابی getSupportedRefreshRates()
hasArrSupport()
و getSuggestedFrameRate(int)
معرفی میکند تا برنامههای شما بتوانند از مزایای ARR راحتتر استفاده کنند. RecyclerView 1.4 به صورت داخلی از ARR پشتیبانی می کند، زمانی که از یک فلش یا اسکرول صاف می نشیند ، و ما به کار خود برای افزودن پشتیبانی ARR به کتابخانه های Jetpack بیشتر ادامه می دهیم. این مقاله نرخ فریم بسیاری از API هایی را پوشش می دهد که می توانید از آنها برای تنظیم نرخ فریم استفاده کنید تا برنامه شما بتواند مستقیماً از ARR استفاده کند.
قابلیت اتصال
Android 16 پلتفرم را به روز می کند تا برنامه شما به آخرین پیشرفت ها در فناوری های ارتباطی و بی سیم دسترسی داشته باشد.
محدوده با امنیت بالا
Android 16 پشتیبانی از ویژگیهای امنیتی قوی در مکان Wi-Fi را در دستگاههای پشتیبانیشده با Wi-Fi 6 802.11az اضافه میکند و به برنامهها اجازه میدهد تا دقت بالاتر، مقیاسپذیری بیشتر و زمانبندی پویا پروتکل را با پیشرفتهای امنیتی از جمله مبتنی بر AES-256 ترکیب کنند. رمزگذاری و محافظت در برابر حملات MITM. این امکان استفاده ایمنتر از آن را در موارد استفاده از مجاورت، مانند باز کردن قفل لپتاپ یا درب خودرو فراهم میکند. 802.11az با استاندارد Wi-Fi 6 ادغام شده است و از زیرساخت ها و قابلیت های آن برای پذیرش گسترده تر و استقرار آسان تر استفاده می کند.
رسانه ها
اندروید 16 دارای ویژگی های مختلفی است که تجربه رسانه ای را بهبود می بخشد.
بهبود انتخابگر عکس
انتخابگر عکس راهی ایمن و داخلی را در اختیار کاربران قرار میدهد تا به برنامه شما اجازه دسترسی به تصاویر و ویدیوهای انتخابی از فضای ذخیرهسازی محلی و ابری را به جای کل کتابخانه رسانهای خود بدهد. با استفاده از ترکیبی از اجزای سیستم مدولار از طریق بهروزرسانیهای سیستم Google و سرویسهای Google Play ، به Android 4.4 (سطح API 19) پشتیبانی میشود. ادغام فقط به چند خط کد با کتابخانه Android Jetpack مرتبط نیاز دارد.
اندروید 16 شامل بهبودهای زیر در انتخابگر عکس است:
- انتخابگر عکس جاسازی شده : API های جدیدی که برنامه ها را قادر می سازد انتخابگر عکس را در سلسله مراتب نمای خود جاسازی کنند. این به آن اجازه می دهد تا مانند یک بخش یکپارچه تر از برنامه احساس کند در حالی که همچنان از جداسازی فرآیند استفاده می کند که به کاربران امکان می دهد رسانه ها را بدون نیاز به مجوزهای بیش از حد گسترده انتخاب کنند. برای به حداکثر رساندن سازگاری در نسخههای پلتفرم و سادهسازی یکپارچهسازی خود، اگر میخواهید انتخابگر عکس تعبیهشده را ادغام کنید، باید از کتابخانه Jetpack اندروید آینده استفاده کنید.
- جستجوی ابری در انتخابگر عکس : APIهای جدیدی که جستجو از ارائه دهنده رسانه ابری را برای انتخابگر عکس Android امکان پذیر می کند . قابلیت جستجو در انتخابگر عکس به زودی ارائه می شود.
حریم خصوصی
اندروید 16 دارای ویژگی های مختلفی است که به توسعه دهندگان برنامه کمک می کند تا از حریم خصوصی کاربران محافظت کنند.
بهروزرسانیهای Health Connect
Health Connect در پیشنمایش برنامهنویس، ACTIVITY_INTENSITY
را اضافه میکند، یک نوع داده جدید که طبق دستورالعملهای سازمان بهداشت جهانی در مورد فعالیت متوسط و شدید تعریف شده است. هر رکورد به زمان شروع، زمان پایان و اینکه آیا شدت فعالیت متوسط یا شدید است نیاز دارد.
Health Connect همچنین حاوی API های به روز شده ای است که از سوابق سلامت پشتیبانی می کنند. این به برنامهها اجازه میدهد سوابق پزشکی را در قالب FHIR با رضایت صریح کاربر بخوانند و بنویسند. این API در یک برنامه دسترسی اولیه است. اگر می خواهید شرکت کنید، ثبت نام کنید تا بخشی از برنامه دسترسی زودهنگام ما باشید .
جعبه ایمنی حریم خصوصی در اندروید
Android 16 دارای آخرین نسخه Privacy Sandbox در Android است که بخشی از کار مداوم ما برای توسعه فناوریهایی است که کاربران بدانند حریم خصوصی آنها محافظت میشود. وبسایت ما اطلاعات بیشتری درباره برنامه بتای برنامهنویس Android Privacy Sandbox دارد تا به شما در شروع کار کمک کند. SDK Runtime را بررسی کنید که به SDK ها اجازه می دهد در یک محیط زمان اجرا اختصاصی جدا از برنامه ای که در حال ارائه آن هستند اجرا شوند، و حفاظت های قوی تری در مورد جمع آوری و به اشتراک گذاری داده های کاربر ارائه می دهد.