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

رهنمودها
برنامهتان را طوری بسازید که با همه اندازههای نمایشگر و وضعیتهای دستگاه سازگار شود.
رابط کاربری
| شناسه دستورالعمل | شناسههای آزمایش | شرح |
|---|---|---|
| Responsive_adaptive_layouts | T-Layout_Flow | برنامه دارای چیدمانهای واکنشگرا و تطبیقی است که برای همه اندازههای صفحهنمایش طراحی شده است. همه چیدمانها واکنشگرا هستند (به انتقال میانای کاربر به چیدمانهای واکنشگرا مراجعه کنید). پیادهسازی چیدمانهای تطبیقی با کلاسهای اندازه پنجره تعیین میشود. میانای کاربر برنامه میتواند شامل موارد زیر باشد:
چیدمانهای چندقاب (درصورت لزوم) ایجاد کنید تا از فضای صفحهنمایش بزرگ بهره ببرید. چیدمانهای متعارف را ببینید. برای برنامههای Jetpack Compose، از چیدمانهای تطبیقی (مانند |
| UI_Secondary_Elements | T-Layout_Flow | پنجرههای مانا، منوهای بافت، و سایر عناصر ثانویه در همه انواع صفحهنمایش و وضعیتهای دستگاه بهدرستی قالببندی شدهاند، برای مثال:
|
| Touch_Targets | T-Touch_Targets | هدفهای لمسی حداقل ۴۸ پیکسل مستقل از تراکم هستند. دستورالعملهای اندازههای هدف Material Design را ببینید. |
| Drawable_Focus | T-Drawable_Focus | حالت متمرکز برای ترسیمپذیرهای سفارشی که تعاملی هستند ایجاد میشود. ترسیمپذیر سفارشی هر عنصر دیداری میانای کاربر است که توسط چارچوب Android ارائه نشده باشد. اگر کاربران بتوانند با یک drawable سفارشی تعامل داشته باشند، drawable باید زمانی که دستگاه در حالت لمسی نیست، قابلتمرکز باشد و نشانگر بصری حالت متمرکز باید آشکار باشد. |
صفحهکلید، موشواره، و پد لمسی
| شناسه دستورالعمل | شناسههای آزمایش | شرح |
|---|---|---|
| Keyboard_Navigation | T-Keyboard_Navigation | جریانهای اصلی تکلیف در برنامه از پیمایش صفحهکلید، ازجمله پیمایش با کلیدهای Tab و جهتنما، پشتیبانی میکنند. ساختن برنامههایی با دسترسپذیری بیشتر را ببینید. |
| میانبرهای صفحهکلید | T-Keyboard_Shortcuts | برنامه از میانبرهای صفحهکلید برای کنشهای پرکاربرد مثل انتخاب، برش، کپی کردن، جایگذاری، واگرد، و ازنو پشتیبانی میکند. صفحهکلید، موشواره، و پد لمسی را ببینید. |
| Keyboard_Media_Playback | T-Keyboard_Media_Playback | از صفحهکلید میتوان برای کنترل بازپخش رسانه استفاده کرد؛ برای مثال، کلید فاصله رسانه را پخش و موقتاً متوقف میکند. |
| Keyboard_Send | T-Keyboard_Send | کلید Enter صفحهکلید عملکرد ارسال را در برنامههای ارتباطی انجام میدهد. |
| Keyboard_Exit | T-Keyboard_Exit | کلید گریز صفحهکلید عملکرد خروج را اجرا میکند که کنشی را لغو یا واگرد میکند، برای مثال:
|
| Context_Menus | T-Context_Menus | منوهای بافت ازطریق رفتار معمول کلیکراست موشواره و پد لمسی (دکمه ثانویه موشواره یا تکضرب ثانویه) دردسترس هستند. |
| Content_Zoom | T-Content_Zoom | محتوای برنامه را میتوان بااستفاده از چرخ پیمایش موشواره (همراه با فشار دادن کلید Control یا Ctrl) و اشارههای نزدیک کردن انگشتان در پد لمسی بزرگنمایی کرد. |
| Hover_States | T-Hover_States | عناصر کنشپذیر میانای کاربر دارای وضعیتهای نگه داشتن نشانگر (درصورت لزوم) هستند تا به کاربران موشواره و پد لمسی نشان دهند که عناصر تعاملی هستند. |
آزمایشها
برای اطمینان از اینکه برنامهتان بهینهسازی شده است و به همه پیکربندیهای نمایش پاسخ میدهد، آزمایشهای زیر را انجام دهید.
رابط کاربری
| شناسه آزمایش | شناسههای دستورالعمل | شرح |
|---|---|---|
| T-Layout_Flow |
Responsive_adaptive_layouts, UI_Secondary_Elements |
برنامه را در دستگاههایی با اندازههای صفحهنمایش بسیار متنوع، ازجمله تلفن، تلفن تاشو، رایانه لوحی کوچک و بزرگ، و رایانه رومیزی اجرا کنید. برنامه را در حالت چندپنجرهای در دستگاهها اجرا کنید. بررسی کنید که چیدمان برنامه به اندازههای مختلف صفحهنمایش و پنجره واکنش نشان دهد و با آنها سازگار شود. بررسی کنید که آیا برنامه ریلهای پیمایش را گسترش میدهد و جمع میکند، تعداد ستونها را در طرحبندیهای جدولی مقیاسبندی میکند، نوشتار را در ستونها جاری میکند، و غیره. بررسی کنید که آیا عناصر میانای کاربر هم ازنظر زیبایی و هم ازنظر عملکرد قالببندی شدهاند یا نه. برای برنامههای قدیمی که از جاسازی فعالیت استفاده میکنند، آزمایش کنید که آیا فعالیتها در صفحهنمایشهای بزرگ در کنار یکدیگر و در صفحهنمایشهای کوچک بهصورت پشتهای نمایش داده میشوند یا نه. |
| T-Touch_Targets | Touch_Targets | بررسی کنید که هدفهای لمسی اندازه و موقعیت ثابت و قابلدسترسی داشته باشند و در همه اندازهها و پیکربندیهای نمایشگر، توسط عناصر دیگر میانای کاربر پنهان یا مبهم نشده باشند. برای اطلاعات درباره دسترسپذیری، اسکنر دسترسپذیری را ببینید. |
| T-Drawable_Focus | Drawable_Focus | در هر صفحه برنامه که حاوی یک ترسیمپذیر سفارشی تعاملی است، بررسی کنید که ترسیمپذیر را بتوان بااستفاده از صفحهکلید خارجی، پد کنترل، یا دستگاه دیگری که امکان فوکوس کردن روی عناصر میانای کاربر را فراهم میکند فوکوس کرد. بررسی کنید که نشانگر دیداری حالت متمرکز نمایان باشد. برای اطلاعات مرتبط، به اسناد Compose focus مراجعه کنید. |
صفحهکلید، موشواره، و پد لمسی
| شناسه آزمایش | شناسههای دستورالعمل | شرح |
|---|---|---|
| T-Keyboard_Navigation | Keyboard_Navigation | بااستفاده از کلیدهای جهش و جهتنمای صفحهکلید خارجی، در مؤلفههای قابلتمرکز برنامه پیمایش کنید. |
| T-Keyboard_Shortcuts | Keyboard_Shortcuts | از میانبرهای صفحهکلید در صفحهکلید خارجی برای انجام کنشهای انتخاب، برش، کپی، جایگذاری، واگرد، و ازنو استفاده کنید. |
| T-Keyboard_Media_Playback | Keyboard_Media_Playback | از صفحهکلید خارجی برای شروع، توقف، مکث، عقب بردن، و جلو بردن سریع بازپخش رسانه استفاده کنید. |
| T-Keyboard_Send | Keyboard_Send | از کلید Enter صفحهکلید خارجی برای ارسال یا ثبت دادهها استفاده کنید. |
| T-Keyboard_Exit | Keyboard_Exit | از کلید گریز صفحهکلید خارجی برای انجام عملکرد خروج استفاده کنید. تأیید کنید که کلید کارهای زیر را انجام میدهد (درصورت لزوم):
|
| T-Context_Menus | Context_Menus | برای دسترسی به منوِ بافت عناصر تعاملی، از دکمه ثانویه موشواره یا قابلیت ضربه ثانویه پد لمسی استفاده کنید. |
| T-Content_Zoom | Content_Zoom | برای بزرگنمایی و کوچکنمایی محتوا، از چرخ نوردش موشواره (همراه با کلید Control یا Ctrl) و اشارههای نیشگون لمسی پد لمسی استفاده کنید. |
| T-Hover_States | Hover_States | مکاننمای موشواره یا پد لمسی را روی عناصر کنشپذیر میانای کاربر نگه دارید تا وضعیت نگه داشتن نشانگر عنصر فعال شود. |