پشتیبانی از رایانه لوحی و صفحه‌نمایش بزرگ

‫Android 13 باعث می‌شود Android در صفحه‌نمایش‌های بزرگ حتی بهتر شود

‫Android 13 براساس بهینه‌سازی‌های رایانه لوحی معرفی‌شده در Android 12 و نوویژگی‌های 12L ساخته شده است—ازجمله بهینه‌سازی‌های واسط کاربر سیستم، چندوظیفگی بهتر، و حالت‌های سازگاری بهبودیافته. به‌عنوان بخشی از آزمایش، مطمئن شوید برنامه‌هایتان در رایانه‌های لوحی و دیگر دستگاه‌های دارای صفحه‌نمایش بزرگ به بهترین شکل نشان داده می‌شوند.

برای شروع، دستگاهی مجازی برای «شبیه‌ساز Android» در Android Studio راه‌اندازی کنید یا Android 13 را در دستگاهی با صفحه‌نمایش بزرگ از شرکای سازنده دستگاه ما دریافت کنید.

اگر تازه توسعه برای صفحه‌نمایش‌های بزرگ را شروع کرده‌اید، راهنماهای صفحه‌نمایش‌های بزرگ و دستگاه‌های تاشو را بررسی کنید تا جدیدترین راهنمایی‌ها و تکنیک‌ها را برای ساختن تجربه‌های عالی در این دستگاه‌ها بخوانید.

در اینجا نگاهی به موارد جدید و چند ایده درباره آنچه باید در برنامه‌تان آزمایش کنید می‌اندازیم.

سیستم‌عاملی که برای صفحه‌نمایش‌های بزرگ بهینه‌سازی شده است

اکنون میانای کاربر سیستم در صفحه‌نمایش‌های بزرگ زیباتر شده است و استفاده از آن آسان‌تر است—در سراسر اعلان‌ها، تنظیمات فوری، صفحه قفل، نمای کلی، صفحه اصلی، و غیره.

در صفحه‌نمایش‌های بزرگ، کشوی اعلان‌ها با نشان دادن «تنظیمات فوری» و اعلان‌ها در چیدمان دو ستونی جدید، از فضا بهره می‌برد. صفحه قفل همچنین از چیدمان دو ستونی بزرگ‌تری برای برجسته کردن اعلان‌ها و ساعت استفاده می‌کند، و برنامه‌های سیستم مانند «تنظیمات» نیز بهینه‌سازی شده‌اند.

چیدمان‌های صفحه‌نمایش بزرگ محتوای بیشتری را در چیدمان دو ستونی نمایش می‌دهند.

تغییرات دیگر بر آسان‌تر کردن تعاملات کلیدی در صفحه‌نمایش‌های بزرگ‌تر تمرکز دارد. برای مثال، کنترل‌های پین و الگوی صفحه قفل در رایانه‌های لوحی اکنون در کنار صفحه نمایش داده می‌شوند تا دسترسی به آن‌ها آسان‌تر باشد و کاربران می‌توانند به‌سادگی روی طرف دیگر صفحه تک‌ضرب بزنند تا کنترل‌های پین/الگو به آن طرف منتقل شوند.

برای دستگاه‌های تاشو، سیستم شبکه صفحه اصلی را بهینه‌سازی می‌کند و انتقال تاشدن-بازشدن را بهبود می‌بخشد تا کاربران به‌طور یکپارچه از یک صفحه خارجی به صفحه بازشده بزرگ‌تر منتقل شوند، که این امر تداوم را تقویت می‌کند و درعین‌حال انتخاب‌های آن‌ها را حفظ می‌کند.

برای توسعه‌دهندگان: تغییر در نمایش رسانه

از نسخه 12L، وقتی نمایشگر مجازی روی سطح رندر می‌شود، نمایشگر مجازی بااستفاده از فرایندی مشابه گزینه centerInside در ImageView مقیاس‌بندی می‌شود تا با سطح مطابقت داشته باشد.

رویکرد مقیاس‌بندی جدید با به‌حداکثر رساندن اندازه تصویر سطح و درعین‌حال اطمینان از نسبت ابعادی مناسب، ارسال محتوای صفحه به تلویزیون و سایر نمایشگرهای بزرگ را بهبود می‌بخشد.

برای جزئیات بیشتر، پخش رسانه در صفحه‌نمایش‌های بزرگ را ببینید.

چندوظیفگی قدرتمند و شهودی

کاربران اغلب هنگام استفاده از صفحه‌نمایش‌های بزرگ‌تر رایانه‌های لوحی، Chromebook، و دستگاه‌های تاشو چندوظیفگی انجام می‌دهند. ویژگی‌های جدید بهره‌وری، چندوظیفگی را حتی قدرتمندتر و شهودی‌تر می‌کند.

نوار وظیفه جدید راه‌اندازی و جابه‌جایی بین برنامه‌ها را درحین کار آسان‌تر می‌کند. اشاره‌ها استفاده از نوار وظیفه را حتی سریع‌تر می‌کنند، با کشیدن و رها کردن برای ورود به حالت صفحهٔ دونیمه و تند کشیدن به بالا برای رفتن به صفحه اصلی. در پیمایش اشاره‌ای، اشاره جابه‌جایی سریع به کاربران امکان می‌دهد برنامه‌های اخیر را ورق بزنند. کاربران می‌توانند هروقت خواستند با فشار طولانی، نوار وظیفه را آشکار یا پنهان کنند.

نوار وظیفه به کاربران امکان می‌دهد برنامه‌ها را سریع‌تر راه‌اندازی کنند و بین آن‌ها جابه‌جا شوند، با کشیدن و رها کردن وارد حالت صفحه دونیمه شوند، و با تند کشیدن به بالا به صفحه اصلی برگردند.

اجرای برنامه‌ها در حالت صفحه دونیمه روشی محبوب برای چندوظیفگی است و پیدا کردن و استفاده از صفحه دونیمه از همیشه آسان‌تر شده است. اکنون کاربران می‌توانند برنامه‌های دلخواهشان را مستقیماً از نوار وظیفه به صفحه دونیمه بکشند و رها کنند، یا می‌توانند از کنش جدید «دونیمه» در نمای کلی استفاده کنند تا با یک ضربه حالت صفحه دونیمه را شروع کنند.

برای اینکه صفحهٔ دونیمه تجربه یکپارچه‌تری برای کاربران باشد، Android نسخه ۱۲ و بالاتر به همه برنامه‌ها اجازه می‌دهد وارد حالت چندپنجره‌ای شوند، صرف‌نظر از اینکه اندازه آن‌ها قابل‌تغییر باشد یا نه.

برای توسعه‌دهندگان: برنامه‌هایتان را در حالت صفحه دونیمه آزمایش کنید

با دردسترس‌تر شدن حالت صفحه دونیمه و با تغییر در Android نسخه ۱۲ که به کاربران امکان می‌دهد همه برنامه‌ها را در حالت صفحه دونیمه راه‌اندازی کنند، اکیداً توصیه می‌کنیم برنامه‌هایتان را در حالت صفحه دونیمه آزمایش کنید.

برای توسعه‌دهندگان: مدیریت تغییرات پویا در اندازه‌های حاشیه

«نوار وظیفه» جدید به‌عنوان Inset به برنامه‌ها گزارش می‌شود، هرچند Inset API جدیدی معرفی نشده است.

وقتی از «نوار وظیفه» با پیمایش اشاره‌ای استفاده می‌شود، می‌توان آن را به‌صورت پویا پنهان کرد و نمایش داد. اگر برنامه‌تان ازقبل از اطلاعات درج برای ترسیم میانای کاربر خود استفاده می‌کند، باید این احتمال را درنظر بگیرد که ممکن است اندازه درج درحالی‌که برنامه در وضعیت ازسرگرفته‌شده است تغییر کند. در این موارد، برنامه‌تان باید setOnApplyWindowInsetsListener را فراخوانی کند و تغییرات ابعاد حاشیه را همان‌طور که در حاشیه‌های نوار سیستم شرح داده شده است مدیریت کند.

تجربه سازگاری بهبودیافته

بسیاری از برنامه‌ها ازقبل برای دستگاه‌های دارای صفحه‌نمایش بزرگ بهینه‌سازی شده‌اند و ازطریق چیدمان‌های واکنش‌گرا، پشتیبانی از حالت چندپنجره‌ای، تداوم در اندازه‌های مختلف صفحه‌نمایش و تغییرات وضعیت دستگاه، و غیره، تجربه‌های عالی ارائه می‌دهند.

برای برنامه‌هایی که هنوز بهینه‌سازی نشده‌اند، سیستم شامل بهبودهای بصری و پایداری در حالت سازگاری است تا تجربه بهتری برای کاربران فراهم کند و ظاهر این برنامه‌ها را به‌طور پیش‌فرض بهبود بخشد.

بهبودهای حالت سازگاری تجربه کاربری بهتری برای برنامه‌هایی که برای صفحه‌نمایش‌های بزرگ بهینه‌سازی نشده‌اند ارائه می‌دهد.

برای بهبود واسط کاربری برای جعبه‌بندی، تعدادی از گزینه‌ها توسط سازندگان دستگاه ازطریق پیکربندی‌های هم‌پوشانی قابل‌سفارشی‌سازی هستند. برای مثال، سازندگان دستگاه اکنون می‌توانند نسبت ابعادی برنامه را پیکربندی کنند، گوشه‌های گرد را روی پنجره برنامه اعمال کنند، و شفافیت نوار وضعیت را تنظیم کنند.

برای توسعه‌دهندگان: برنامه‌هایتان را در حالت سازگاری بررسی کنید

اگر برنامه‌تان هنوز برای سازگاری با تغییرات اندازه صفحه‌نمایش و وضعیت دستگاه بهینه‌سازی نشده است، ممکن است برنامه‌تان در حالت سازگاری راه‌اندازی شود. توصیه می‌کنیم برنامه‌تان را با حالت‌های سازگاری آزمایش کنید تا مطمئن شوید برنامه‌تان ظاهر و عملکرد درستی دارد.

برای جزئیات بیشتر، حالت جعبه‌ای بهبودیافته را ببینید.

بهبود رد کردن کف دست

صفحه‌نمایش‌های بزرگ سطوح ایده‌آلی برای ورودی قلم هستند. اما وقتی کاربران بااستفاده از قلم در برنامه شما طراحی می‌کنند، می‌نویسند، یا با آن تعامل برقرار می‌کنند، گاهی‌اوقات کف دستشان با صفحه تماس پیدا می‌کند. رویداد لمسی می‌تواند قبل‌از اینکه سیستم رویداد را به‌عنوان لمس تصادفی کف دست تشخیص دهد و نادیده بگیرد، به برنامه‌تان گزارش شود.

قبل‌از Android 13 (سطح میانای برنامه‌سازی کاربردی ۳۳)، سیستم رویدادهای لمس کف دست را با ارسال MotionEvent با ACTION_CANCEL لغو می‌کرد. Android 13 با افزودن FLAG_CANCELED به شیء رویداد حرکتی، تشخیص نادیده گرفتن کف دست را بهبود می‌بخشد.

اگر لمس کف دست تنها اشاره‌گر رویداد لمسی باشد، سیستم رویداد را با تنظیم ACTION_CANCEL و FLAG_CANCELED در شیء رویداد حرکتی لغو می‌کند. اگر اشاره‌گرهای دیگر پایین باشند، Android 13 ACTION_POINTER_UP و FLAG_CANCELED را تنظیم می‌کند.

برای توسعه‌دهندگان: شنوندگان و گردانندگان رویداد لمسی را به‌روز کنید

در Android 12 (سطح API‏ ۳۲) و نسخه‌های پایین‌تر، تشخیص رد کردن لمس کف دست فقط برای رویدادهای لمسی تک‌نشانگر امکان‌پذیر است. اگر لمس کف دست تنها اشاره‌گر باشد، سیستم با تنظیم ACTION_CANCEL در شیء رویداد حرکتی، رویداد را لغو می‌کند. اگر اشاره‌گرهای دیگر پایین باشند، سیستم ACTION_POINTER_UP را تنظیم می‌کند که برای تشخیص رد کردن کف دست کافی نیست. در هر دو صورت، FLAG_CANCELED تنظیم نشده است.

برای Android 13، شنوندگان و گردانندگان رویداد لمسی را به‌روز کنید تا FLAG_CANCELED را هنگام دریافت ACTION_POINTER_UP بررسی کنند تا مطمئن شوید رد کردن کف دست و دیگر رویدادهای لغوشده شناسایی و رسیدگی می‌شوند.

به‌روزرسانی‌ها و منابع بیشتر برای صفحه‌نمایش‌های بزرگ

تغییرات Google Play در صفحه‌نمایش‌های بزرگ

برای اینکه افراد راحت‌تر بتوانند بهترین تجربه‌های برنامه را در رایانه لوحی، دستگاه تاشو، و دستگاه ChromeOS خود پیدا کنند، Google Play تغییراتی را برای برجسته کردن برنامه‌هایی که برای دستگاه‌هایشان بهینه‌سازی شده‌اند اعمال می‌کند.

بررسی‌های جدیدی برای ارزیابی کیفیت هر برنامه براساس دستورالعمل‌های کیفیت برنامه برای صفحه‌نمایش بزرگ اضافه شد تا اطمینان حاصل شود که Google Play بهترین برنامه‌های ممکن را در این دستگاه‌ها نمایش می‌دهد. وقتی برنامه‌ای برای صفحه‌نمایش‌های بزرگ بهینه‌سازی نشده باشد، کاربران صفحه‌نمایش‌های بزرگ اکنون اعلانی در صفحه فهرستگان «فروشگاه Play» برنامه می‌بینند تا به آن‌ها کمک کند برنامه‌هایی را پیدا کنند که بهترین عملکرد را در دستگاهشان دارند.

Play همچنین رده‌بندی‌های برنامه مختص صفحه‌نمایش بزرگ را معرفی می‌کند، همان‌طور که اولین‌بار در اوت ۲۰۲۱ اعلام شد، بنابراین کاربران می‌توانند به نحوه عملکرد برنامه شما در دستگاه‌های دارای صفحه‌نمایش بزرگ رده‌بندی بدهند.

جاسازی کردن فعالیت با Jetpack WindowManager

جاسازی فعالیت به شما امکان می‌دهد با نمایش هم‌زمان چند فعالیت، مثلاً برای الگوی «فهرست-جزئیات»، از فضای نمایش اضافی صفحه‌نمایش‌های بزرگ بهره ببرید و این کار به بازسازی کد کمی در برنامه‌تان نیاز دارد یا اصلاً نیاز ندارد. با ایجاد فایل پیکربندی XML یا برقراری تماس‌های Jetpack WindowManager API، تعیین می‌کنید که برنامه‌تان چگونه فعالیت‌هایش را نمایش دهد (کنارهم یا پشته‌ای). سیستم بقیه کارها را انجام می‌دهد و ارائه را براساس پیکربندی‌ای که ایجاد کرده‌اید تعیین می‌کند. اگر برنامه‌تان از چند فعالیت استفاده می‌کند، توصیه می‌کنیم جاسازی فعالیت را امتحان کنید. برای کسب اطلاعات بیشتر، جاسازی فعالیت را ببینید.

درخواست جهت دستگاه

برخلاف تلفن‌های استاندارد، دستگاه‌های تاشو و رایانه‌های لوحی اغلب در هر دو جهت افقی و عمودی استفاده می‌شوند. رایانه‌های لوحی اغلب در حالت افقی در پایه قرار می‌گیرند، درحالی‌که دستگاه‌های تاشو را می‌توان براساس تای آن‌ها جهت‌دهی کرد.

برخی‌از برنامه‌ها جهت ثابتی را در حالت عمودی یا افقی درخواست می‌کنند و انتظار دارند صرف‌نظر از جهت دستگاه، در جهت ترجیحی خود باقی بمانند (به مشخصه مانیفست screenOrientation مراجعه کنید). درحالی‌که این ویژگی همچنان پشتیبانی می‌شود، سازندگان دستگاه این گزینه را دارند که درخواست برنامه برای جهت‌یابی ترجیحی را لغو کنند.

در Android نسخه ۱۲ (سطح API‏ ۳۱) و بالاتر، سازندگان دستگاه می‌توانند صفحه‌نمایش‌های دستگاه‌های تکی (مانند صفحه‌نمایش اندازه رایانه لوحی در دستگاه تاشو) را پیکربندی کنند تا مشخصات جهت را نادیده بگیرند و برنامه‌ای را در حالت عمودی مجبور کنند که به‌صورت عمودی اما با حاشیه‌های سیاه در نمایشگرهای افقی نمایش داده شود. با نادیده گرفتن مشخصات ، Android می‌تواند هدف توسعه‌دهنده را برای همیشه ارائه کردن برنامه در نسبت ابعادی ثابت بهتر برآورده کند و درعین‌حال جهت برنامه را برای قابلیت استفاده بهینه حفظ کند.

بااین‌حال، برای ارائه بهترین تجربه کاربری، برنامه‌هایتان را با چیدمان‌های واکنش‌گرا طراحی کنید تا از فضای صفحه‌نمایش موجود در هر دو جهت عمودی و افقی در صفحه‌نمایش‌های بزرگ‌تر از ۶۰۰ پیکسل مستقل از تراکم به‌طور کامل استفاده شود.

دریافت Android 13 در دستگاه شریک با صفحه‌نمایش بزرگ

با شرکای سازنده دستگاه همکاری کرده‌ایم تا Android 13 را برای امتحان کردن در دستگاه‌های دارای صفحه‌نمایش بزرگ دردسترس قرار دهیم. برای دیدن فهرست دستگاه‌های صفحه‌بزرگ واجدشرایط آن‌ها و دریافت جزئیات درباره نسخه‌های ساخت بتای دردسترس، به سایت‌های زیر مراجعه کنید.

برای به‌روزرسانی‌ها و پشتیبانی، منابعی را که هر سازنده دستگاه در سایت Android 13 Beta خود پیوند داده است ببینید. توجه داشته باشید که هر شریک به‌روزرسانی‌های نسخه بتا را مستقیماً به شما ارائه می‌دهد و ثبت‌نام و پشتیبانی خود را مدیریت می‌کند.

آنچه باید آزمایش شود

قبل‌از شروع آزمایش، دستگاهی مجازی برای «شبیه‌ساز Android» در Android Studio راه‌اندازی کنید یا Android 13 را در دستگاهی با صفحه‌نمایش بزرگ از شرکای سازنده دستگاه ما دریافت کنید. پس‌از تکمیل راه‌اندازی دستگاه، باید برنامه‌تان را با چند مورد استفاده رایج در صفحه‌نمایش بزرگ آزمایش کنید تا مطمئن شوید برنامه‌تان همان‌طور که می‌خواهید پاسخ می‌دهد. در اینجا چند حوزه توصیه‌شده با پیوندهایی به جزئیات بیشتر درباره منابع مرتبط آورده شده است که می‌تواند به شما کمک کند برنامه‌تان را برای صفحه‌نمایش‌های بزرگ بهینه‌سازی کنید:

آنچه باید آزمایش شود منابع
اندازه صفحه‌نمایش، وضعیت دستگاه، و چرخش

بررسی کنید وقتی اندازه صفحه‌نمایش به‌دلیل تغییر وضعیت دستگاه تغییر می‌کند (مثلاً باز کردن دستگاه تاشو یا قرار دادن دستگاه تاشو در حالت رومیزی)، برنامه‌تان چگونه پاسخ می‌دهد. همچنین سعی کنید دستگاه را در هریک از این حالت‌ها بچرخانید تا مطمئن شوید برنامه‌تان به‌طور بهینه پاسخ می‌دهد.

اسناد نمونه‌ها Codelabs گفتگوهای فنی
تعامل با «نوار وظیفه» و حالت صفحه دونیمه

بررسی کنید برنامه‌تان هنگام مشاهده با نوار وظیفه در صفحه‌نمایش‌های بزرگ چگونه پاسخ می‌دهد. بررسی کنید که میانای کاربر برنامه‌تان توسط نوار وظیفه قطع یا مسدود نشده باشد، بااستفاده از نوار وظیفه وارد حالت‌های چندپنجره‌ای و دونیمه شوید و از آن‌ها خارج شوید، و جابه‌جایی سریع بین برنامه‌تان و برنامه‌های دیگر را بااستفاده از نوار وظیفه آزمایش کنید.

اگر برنامه‌تان جهت ثابتی دارد و تغییرپذیر نیست، بررسی کنید که برنامه‌تان چگونه به اصلاحات حالت سازگاری مانند جعبه‌نامه‌ای پاسخ می‌دهد.

اسناد نمونه‌ها گفتگوهای فنی
حالت چندپنجره‌ای

بررسی کنید برنامه‌تان هنگام اجرا در حالت چندپنجره‌ای در صفحه‌نمایش‌های بزرگ (sw >= 600dp) چگونه پاسخ می‌دهد، به‌ویژه اگر برنامه‌تان resizeableActivity="false" را تنظیم کند.

اگر برنامه‌تان resizeableActivity="true" را تنظیم می‌کند، حتماً بررسی کنید که برنامه‌تان هنگام اجرا در حالت چندپنجره‌ای در صفحه‌نمایش‌های کوچک (sw < 600dp) چگونه پاسخ می‌دهد.

اگر برنامه‌تان از «میاناهای برنامه‌سازی کاربردی نمایش» مانند Display.getRealSize() و Display.getRealMetrics() استفاده می‌کند، به‌جای آن از «میاناهای برنامه‌سازی کاربردی» WindowMetrics در کتابخانه WindowManager Jetpack استفاده کنید.

اسناد نمونه‌ها گفتگوهای فنی
نمایش جریانی رسانه

اگر برنامه‌تان از فرافکنی رسانه استفاده می‌کند، بررسی کنید برنامه‌تان هنگام بازپخش، جاری‌سازی، یا ارسال محتوای رسانه در دستگاه‌های دارای صفحه‌نمایش بزرگ چگونه پاسخ می‌دهد. حتماً تغییرات وضعیت دستگاه را در دستگاه‌های تاشو نیز درنظر بگیرید.

اسناد نمونه‌ها گفتگوهای فنی
پیش‌نمایش دوربین

برای برنامه‌های دوربین، بررسی کنید که واسط کاربر پیش‌نمایش دوربینتان در صفحه‌نمایش‌های بزرگ وقتی برنامه‌تان در حالت چندپنجره‌ای یا صفحه‌نمایش تقسیم‌شده به بخشی از صفحه‌نمایش محدود شده است چگونه پاسخ می‌دهد. همچنین بررسی کنید وقتی وضعیت دستگاه تاشو تغییر می‌کند، برنامه‌تان چگونه پاسخ می‌دهد.

اسناد