گوگل اخیراً از عرضه اندروید ۱۶ خبر داد که مجموعهای از بهروزرسانیهای مهم را برای کاربران و توسعهدهندگان به ارمغان میآورد. این بهروزرسانی، علاوه بر عرضه عمومی اندروید ۱۶ برای دستگاههای پیکسل پشتیبانیشده، شامل پیشنمایش توسعهدهنده برای تجربههای بهبودیافته دسکتاپ اندروید با نمایشگرهای متصل و بهروزرسانیهای جدید برای اپلیکیشنهای گوگل نیز میشود.
اطلاعات کلیدی عرضه
با آغاز عرضه اندروید ۱۶ برای اکثر دستگاههای پیکسل پشتیبانیشده، کدهای منبع این نسخه نیز در پروژه متنباز اندروید (AOSP) در دسترس قرار گرفته است. این امر به توسعهدهندگان اجازه میدهد تا با جزئیات بیشتری از نحوه عملکرد اندروید آگاه شوند. همچنین، قابلیت سازگاری (Compatibility) در این نسخه مورد تأکید قرار گرفته تا مهارتهای توسعه اپلیکیشن در اندروید استودیو با استفاده از جتپک کامپوز (Jetpack Compose) به ساخت اپلیکیشنهایی کمک کند که در کل اکوسیستم (Ecosystem) اندروید عملکرد مطلوبی داشته باشند.
اندروید ۱۶ مفهوم نسخه فرعی SDK (Minor SDK Release) را معرفی کرده است. این رویکرد جدید به گوگل امکان میدهد تا رابطهای برنامهنویسی کاربردی (API) خود را با سرعت بیشتری بهروزرسانی کند و همگام با نوآوریهای پرسرعت در اپلیکیشنها و دستگاهها پیش برود. علاوه بر عرضه اصلی امروز، یک نسخه فرعی دیگر نیز در سهماهه چهارم سال ۲۰۲۵ برنامهریزی شده است که شامل APIهای جدید توسعهدهنده، بهروزرسانیهای قابلیتها، بهینهسازیها و رفع اشکالات خواهد بود. همچنین، گوگل به انتشار بهروزرسانیهای فصلی اندروید ادامه میدهد. بهروزرسانی سهماهه سوم (Q3) نیز بهبودهای بصری مربوط به متریال اکسپرسیو (Material Expressive) را ارائه خواهد داد که نسخه بتا آن هماکنون برای دستگاههای پیکسل پشتیبانیشده در دسترس است.
قابلیتهای جدید و بهبودها
APIهای دوربین و رسانه برای توانمندسازی تولیدکنندگان محتوا: اندروید ۱۶ پشتیبانی از کاربران حرفهای دوربین را با قابلیتهایی نظیر تشخیص صحنه حالت شب (night mode scene detection)، نوردهی خودکار ترکیبی (hybrid auto exposure)، و تنظیمات دقیق دمای رنگ بهبود میبخشد. ثبت تصاویر متحرک (motion photos) با اقدامات جدید اینتنت (Intent Actions) سادهتر شده و بهبودهایی در تصاویر الترا اچدیآر (UltraHDR)، از جمله پشتیبانی از رمزگذاری HEIC و پارامترهای جدید از استاندارد پیشنویس ISO 21496-1، صورت گرفته است. پشتیبانی از کدک (Codec)
Advanced Professional Video (APV) جایگاه اندروید را در گردش کارهای ضبط و پس از تولید حرفهای بهبود میبخشد و کیفیت ویدیویی تقریباً بدون افت (perceptually lossless) را فراهم میکند که حتی پس از چندین رمزگشایی/رمزگذاری مجدد، دچار افت کیفیت بصری شدید نمیشود. علاوه بر این، ابزار انتخاب عکس اندروید اکنون میتواند در ساختار سلسلهمراتبی نمایش (view hierarchy) شما تعبیه شود، و کاربران از قابلیت جستجوی رسانههای ابری (cloud media) بهرهمند خواهند شد.
اپلیکیشنهای زیباتر و سازگارتر: اندروید ۱۶ تغییراتی را برای بهبود سازگاری و ظاهر بصری اپلیکیشنها معرفی میکند که پایه و اساس تغییرات آتی متریال ۳ اکسپرسیو (Material 3 Expressive) را تشکیل میدهد. اپلیکیشنهایی که اندروید ۱۶ را هدف قرار میدهند، دیگر نمیتوانند از حالت تمامصفحه (edge-to-edge) خارج شوند و ویژگی elegantTextHeight برای اطمینان از فاصله مناسب در زبانهایی مانند عربی، لائو، میانمار، تامیلی، گجراتی، کانادایی، مالایالام، اودیا، تلوگو یا تایلندی نادیده گرفته میشود.
اپلیکیشنهای سازگار اندروید: با توجه به اجرای اپلیکیشنهای اندروید بر روی انواع دستگاهها و حالتهای پنجرهبندی بیشتر در نمایشگرهای بزرگ، توسعهدهندگان باید اپلیکیشنهای اندروید را به گونهای بسازند که با هر اندازه صفحه و پنجره، بدون در نظر گرفتن جهتگیری دستگاه، سازگار باشند. برای اپلیکیشنهایی که اندروید ۱۶ (سطح API 36) را هدف قرار میدهند، اندروید ۱۶ شامل تغییراتی در نحوه مدیریت جهتگیری (orientation)، قابلیت تغییر اندازه (resizability)، و محدودیتهای نسبت تصویر (aspect ratio) توسط سیستم میشود. در نمایشگرهایی با عرض کوچکتر یا مساوی ۶۰۰dp، این محدودیتها دیگر اعمال نمیشوند و اپلیکیشنها کل پنجره نمایشگر را پر خواهند کرد. توسعهدهندگان باید اپلیکیشنهای خود را بررسی کنند تا اطمینان حاصل شود که رابطهای کاربری (UI) موجود آنها به طور یکپارچه مقیاسپذیر هستند و در نسبتهای تصویر پرتره و افقی به خوبی کار میکنند. فریمورکها، ابزارها و کتابخانههایی برای کمک به این امر ارائه شده است. برای آزمایش این تغییرات بدون نیاز به هدفگذاری، میتوان از فریمورک سازگاری اپلیکیشن با فعال کردن پرچم UNIVERSAL_RESIZABLE_BY_DEFAULT استفاده کرد.
حریم خصوصی و امنیت: اندروید ۱۶ به مأموریت خود برای بهبود امنیت و اطمینان از حریم خصوصی کاربر ادامه میدهد. این شامل بهبود امنیت در برابر حملات تغییر مسیر اینتنت (Intent Redirection Attacks)، منحصر به فرد کردن MediaStore.getVersion برای هر اپلیکیشن، اضافه کردن APIای که به اپلیکیشنها امکان میدهد کلیدهای اندروید کیاستور (Android Keystore) را به اشتراک بگذارند، گنجاندن آخرین نسخه سندباکس حریم خصوصی در اندروید (Privacy Sandbox on Android)، معرفی رفتار جدید در جریان اتصال دستگاه همراه (companion device pairing flow) برای محافظت از حریم خصوصی موقعیت مکانی کاربر، و اجازه دادن به کاربر برای انتخاب و محدود کردن دسترسی به رسانههای اشتراکی متعلق به اپلیکیشن در ابزار انتخاب عکس است.
آزمایش مجوز شبکه محلی: اندروید ۱۶ به اپلیکیشن شما امکان میدهد ویژگی مجوز شبکه محلی (local network permission) آتی را آزمایش کنید که در یک نسخه اصلی آینده اندروید، نیاز به اعطای مجوز NEARBY_WIFI_DEVICES به اپلیکیشن شما خواهد داشت.
اندرویدی برای همه: اندروید ۱۶ ویژگیهایی مانند صدای پخش آئوراکست (Auracast) با سمعکهای سازگار با LE Audio را اضافه میکند. تغییرات دسترسپذیری شامل گسترش TtsSpan با TYPE_DURATION، یک API جدید مبتنی بر لیست در AccessibilityNodeInfo، پشتیبانی بهبودیافته برای عناصر قابل گسترش با استفاده از setExpandedState، RANGE_TYPE_INDETERMINATE برای ویجتهای ProgressBar نامشخص، متدهای AccessibilityNodeInfo getChecked و setChecked(int) که از حالت "نیمهبررسیشده" (partially checked) پشتیبانی میکنند، setSupplementalDescription برای ارائه متن برای یک ViewGroup بدون بازنویسی اطلاعات فرزندانش، و setFieldRequired برای اطلاعرسانی به سرویس دسترسپذیری در مورد اجباری بودن ورودی فیلد فرم است.
متن با حاشیه برای حداکثر کنتراست: اندروید ۱۶ قابلیت متن با حاشیه (outline text) را معرفی میکند که جایگزین متن با کنتراست بالا (high contrast text) میشود و ناحیه کنتراست بزرگتری را در اطراف متن ترسیم میکند تا خوانایی را به شدت بهبود بخشد. همچنین APIهای جدید AccessibilityManager به اپلیکیشنهای شما امکان میدهد تا بررسی کنند یا یک شنونده را ثبت کنند تا ببینند آیا این حالت فعال است یا خیر.
آمادهسازی اپلیکیشنها، کتابخانهها، ابزارها و موتورهای بازی
اگر شما یک SDK، کتابخانه (Library)، ابزار (Tool)، یا موتور بازی (Game Engine) را توسعه میدهید، آمادهسازی بهروزرسانیهای لازم اکنون از اهمیت بیشتری برخوردار است تا از مسدود شدن توسعهدهندگان اپلیکیشن و بازی پاییندستی توسط مشکلات سازگاری جلوگیری کرده و به آنها اجازه دهید تا ویژگیهای جدید SDK را هدف قرار دهند.
تغییرات دیگری که پس از هدفگذاری اپلیکیشن شما برای اندروید ۱۶ تأثیرگذار خواهند بود:
- تجربه کاربری: تغییرات شامل حذف قابلیت غیرفعال کردن حالت تمامصفحه (edge-to-edge opt-out)، مهاجرت اجباری یا انصراف برای بازگشت پیشبینانه، و غیرفعال کردن APIهای فونت
elegant است. - عملکرد اصلی: بهینهسازیهایی برای برنامهریزی کارهای با نرخ ثابت (fixed-rate work scheduling) انجام شده است.
- دستگاههای با صفحه بزرگ: محدودیتهای جهتگیری، قابلیت تغییر اندازه و نسبت تصویر نادیده گرفته میشوند. اطمینان حاصل کنید که طرحبندیهای شما از تمام جهتگیریها در نسبتهای تصویر مختلف برای سازگاری با سطوح متفاوت پشتیبانی میکنند.
- سلامت و تناسب اندام: تغییراتی برای مجوزهای سلامت و تناسب اندام اعمال شده است.
آمادهسازی اپلیکیشن خود برای آینده: آزمایش اپلیکیشن خود را با ویژگی حفاظت از شبکه محلی (Local Network Protection) که در آینده ارائه خواهد شد، در نظر بگیرید. این ویژگی به کاربران کنترل بیشتری بر روی اپلیکیشنهایی میدهد که میتوانند به دستگاههای موجود در شبکه محلی آنها دسترسی داشته باشند.
به یاد داشته باشید که در طول آزمایش سازگاری، کتابخانهها و SDKهایی را که اپلیکیشن شما از آنها استفاده میکند، به طور کامل بررسی کنید. ممکن است نیاز به بهروزرسانی به نسخههای فعلی SDK داشته باشید یا در صورت بروز هرگونه مشکل، با توسعهدهنده تماس بگیرید. پس از انتشار نسخه سازگار با اندروید ۱۶ از اپلیکیشن خود، میتوانید فرآیند بهروزرسانی targetSdkVersion اپلیکیشن خود را آغاز کنید. تغییرات رفتاری را که هنگام هدفگذاری اپلیکیشن شما برای اندروید ۱۶ اعمال میشوند، مرور کرده و از فریمورک سازگاری برای کمک به تشخیص سریع مشکلات استفاده کنید.
شروع کار با اندروید ۱۶
اگر دستگاه پیکسل دارید، باید بهزودی اندروید ۱۶ را دریافت کنید، مگر اینکه قبلاً در نسخه بتای اندروید بودهاید. اگر دستگاه پیکسل ندارید، میتوانید از تصاویر سیستمی ۶۴ بیتی با شبیهساز اندروید (Android Emulator) در اندروید استودیو (Android Studio) استفاده کنید. برای بهترین تجربه توسعه با اندروید ۱۶، توصیه میشود از آخرین ساخت Canary اندروید استودیو با نام ناروال (Narwhal) استفاده کنید. پس از راهاندازی، میتوانید اپلیکیشن فعلی خود را برای سازگاری آزمایش کنید، بررسی کنید که آیا اپلیکیشن شما تحت تأثیر تغییرات اندروید ۱۶ قرار میگیرد یا خیر، و اپلیکیشن خود را بر روی یک دستگاه یا شبیهساز اندروید با اندروید ۱۶ نصب کرده و به طور گسترده آزمایش کنید.