دستورالعمل های کیفیت برنامه Android XR

تعاریف سطح سازگاری

برای تأیید اینکه برنامه شما تجربه کاربری خوبی را در هدست‌های XR و عینک‌های XR سیمی ارائه می‌دهد، چک‌لیست‌ها و آزمایش‌های سازگاری زیر را بررسی کنید.

چک لیست‌ها و تست‌ها، مجموعه‌ای جامع از الزامات کیفی را برای اکثر انواع برنامه‌های اندروید تعریف می‌کنند.

اپلیکیشن موبایل سازگار با اندروید XR

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

این نوع برنامه به صورت تمام صفحه روی یک پنل در محیط کاربر اجرا می‌شود، اما طرح‌بندی آن ممکن است در اندازه‌های بزرگتر ایده‌آل نباشد. برنامه‌هایی که اندازه‌های جمع و جور را در مانیفست مشخص می‌کنند، بر این اساس نمایش داده می‌شوند. این برنامه در حالت سازگاری اجرا نمی‌شود و بنابراین دارای جعبه حروف نیست. این برنامه دارای تجربه کاربردی از روش‌های ورودی اصلی ارائه شده توسط اندروید XR (ردیابی چشم + ژست یا دست‌های raycast) و پشتیبانی اولیه از دستگاه‌های ورودی خارجی، از جمله صفحه کلید، ماوس، ترک‌پد و کنترل‌کننده‌های بازی است. ممکن است قابلیت تغییر اندازه داشته باشد یا نداشته باشد.

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

برنامه سازگار با اندروید XR برای صفحه نمایش بزرگ

یک برنامه صفحه بزرگ سازگار با اندروید XR، یک برنامه صفحه بزرگ Tier 1 یا Tier 2 را نشان می‌دهد که بهینه‌سازی‌های طرح‌بندی را برای همه اندازه‌های صفحه نمایش و پیکربندی‌های دستگاه (به عنوان مثال، صفحه نمایش‌های بزرگ علاوه بر موبایل) به همراه پشتیبانی پیشرفته از دستگاه‌های ورودی خارجی و چندوظیفگی پیاده‌سازی کرده است. برنامه‌های صفحه بزرگ سازگار با اندروید XR به طور خودکار در فروشگاه Play انتخاب و در دسترس هستند.

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

برنامه متمایز اندروید XR

یک برنامه متمایز Android XR دارای یک تجربه کاربری است که به صراحت برای XR طراحی شده است و ویژگی‌هایی را پیاده‌سازی می‌کند که فقط در XR ارائه می‌شوند. شما می‌توانید با اضافه کردن ویژگی‌های XR (مثلاً پنل‌های فضایی)، اضافه کردن محتوای XR (مثلاً ویدیوی سه‌بعدی) به برنامه‌های خود با توسعه با Android Jetpack XR SDK، Unity یا OpenXR، از قابلیت‌های Android XR نهایت استفاده را ببرید و تجربیات برنامه خود را متمایز کنید.

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

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

تمام برنامه‌های ساخته شده با Unity یا OpenXR، متمایز در نظر گرفته می‌شوند. برنامه‌های ساخته شده با Unity یا OpenXR باید معیارهای کیفیت و حداقل الزامات را داشته باشند تا به عنوان یک برنامه متمایز Android XR در نظر گرفته شوند. به عنوان مثال، برنامه‌ای با نرخ فریم پایین، خرابی یا سایر تجربیات منفی کاربر، واجد شرایط نخواهد بود.

چک لیست سازگاری با اندروید XR

این چک لیست‌های سازگاری، معیارهایی را تعریف می‌کنند که به شما در ارزیابی سطح پشتیبانی برنامه‌تان از واقعیت افزوده (XR) کمک می‌کنند. سطوح پشتیبانی شامل موارد زیر است:

اپلیکیشن موبایل سازگار با اندروید XR

برنامه شما باید الزامات اصلی کیفیت برنامه را برآورده کند.

برنامه شما همچنین باید تمام دستورالعمل‌های دسترسی‌پذیری قابل اجرا برای سایر فرم فاکتورها مانند تلفن‌ها و تبلت‌ها (به عنوان مثال، کنتراست رنگ ) را رعایت کند.

برنامه سازگار با اندروید XR برای صفحه نمایش بزرگ

هر برنامه صفحه بزرگ Tier 1 یا Tier 2 به عنوان یک برنامه صفحه بزرگ سازگار با Android XR در نظر گرفته می‌شود. دستورالعمل‌های کیفیت برنامه صفحه بزرگ، رویکردی ساختاریافته برای تضمین یک تجربه عالی در Android XR ارائه می‌دهند، اما ملاحظات حالت دستگاه مانند چرخش یا تا شدن/باز شدن الزامی نیست. به طور مشابه، Android XR شامل پشتیبانی از قلم استایلوس نمی‌شود.

اپلیکیشن متمایز با اندروید XR

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

نوع برنامه / مورد استفاده

دسته بندی

مساحت

راهنمایی

الزامات عمومی پایه (اندروید و OpenXR)

حریم خصوصی و امنیت

ورود به حساب کاربری (اولین تجربه کاربری)

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

ایمنی و راحتی

استروبینگ

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

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

۱. اگر اثر چشمک‌زن کاملاً ضروری است، مطمئن شوید که سرعت چشمک‌زن بسیار کم (کمتر از ۳ چشمک در ثانیه) و ناحیه چشمک‌زن کوچک و نامحسوس است.

۲. امکانی را برای غیرفعال کردن آن از طریق تنظیمات یا ترجیحات در نظر بگیرید.

۳. قبل از وقوع هرگونه لرزش، یک پیام هشدار واضح نمایش دهید.

اجتناب از بیماری حرکت

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

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

ورودی

اندازه اهداف تعامل

اهداف قابل تعامل، بر اساس فاصله‌ی مورد نظر برای تعامل، دارای حداقل اندازه و اندازه‌ی پیشنهادی هستند:

  • حداقل اندازه: DistanceInM x 0.868 x 48 = M
  • اندازه پیشنهادی: DistanceInM x 0.868 x 56 = M یا بزرگتر

هنگام استفاده از کیت توسعه نرم‌افزار Jetpack XR، حداقل اندازه ۴۸ در ۴۸ دی‌پی را توصیه می‌کنیم و اندازه توصیه‌شده برای tap target، ۵۶ در ۵۶ دی‌پی یا بیشتر است.

عملکرد فنی XR

ورودی دست

برنامه شما از ورودی طبیعی دست به عنوان یک روش تعاملی پایه برای اندروید XR پشتیبانی می‌کند، از جمله الزامات پخش پرتو با دست و پشتیبانی از حرکات برای ورودی‌های اولیه.

اپلیکیشن شما بدون نیاز به کنترلر قابل بازی یا استفاده است، اما در صورت تمایل می‌توانید با استفاده از آنها قابلیت‌های بیشتری به آن اضافه کنید.

مرز (قبلاً گاردین)

اگر برنامه شما انتظار دارد که کاربران از نقطه شروع خود (در هنگام اجرای برنامه) در فضای فیزیکی خود حرکت کنند، یا درخواست عبور از طریق (passthrough) را می‌دهد یا PROPERTY_XR_BOUNDARY_TYPE_RECOMMENDED = XR_BOUNDARY_TYPE_LARGE را در مانیفست اعلام می‌کند.

اگر برنامه شما از XR_BOUNDARY_TYPE_LARGE استفاده می‌کند، بدون نمایش مرز (تا شعاع ۲.۰ متر؛ توجه داشته باشید، عبور از مرز از شعاع ۱.۵ متر شروع به محو شدن می‌کند) کاملاً قابل پخش است.

عملکرد

رندرینگ

برنامه شما هر فریم را بین <11.1 میلی‌ثانیه (90 هرتز) و <13.8 میلی‌ثانیه (72 هرتز) رندر می‌کند.

وضوح تصویر

برنامه شما حداقل وضوح تصویر ۱۸۵۶ در ۲۱۶۰ برای هر چشم دارد.

زمان شروع برنامه

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

مدت زمان هدف را در زیر مشاهده کنید:

  • میانگین شروع سرد: کمتر از ۲ ثانیه
  • میانگین شروع گرم: کمتر از ۱ ثانیه

برای جزئیات بیشتر، به زمان شروع برنامه مراجعه کنید.

ANR ها

برنامه شما باعث خرابی یا مسدود شدن رابط کاربری (UI thread) که باعث خطای ANR ("Android Not Responding") می‌شود، نمی‌شود.

برنامه شما در ۹۹.۵٪ از جلسات روزانه کمتر از ۱ ANR دارد.

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

نرخ خرابی

منابع سیستم را بیش از حد مصرف نکنید که بر بقیه سیستم و سایر برنامه‌ها تأثیر بگذارد و نرخ خرابی را در حدود ۱٪ نگه دارید.

برنامه اندروید پایه (متمایز شده با واقعیت افزوده)

تجربه بصری و کاربری

XR پایه

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

پنل‌های فضایی

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

محیط‌ها

هنگام نمایش یک محیط مجازی، روشنایی می‌تواند حواس‌پرت‌کننده و خسته‌کننده باشد. برنامه شما طیف رنگی امنی را بدون افزایش ناگهانی روشنایی که با رابط کاربری تداخل داشته باشد یا ممکن است باعث خستگی کاربر شود، ارائه می‌دهد. رابط کاربری در همه جهات، به‌ویژه در نوار افقی میانی نگاه کاربر، خوانا است. (دستورالعمل‌های دقیق در آینده لینک خواهند شد)

انتقال بین فضای خانه (HSM) و فضای کامل (FSM)

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

پنل‌های فضایی

منوها، فایل‌ها و کنترل‌ها را در یک پنل یا مدار اختصاصی قرار دهید. این اجزا را در پنل ویرایش اصلی قرار ندهید.

پیمایش منو / لیست

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

قابلیت ویدیو / رسانه

تجربه بصری و کاربری

پخش‌کننده فضایی (فقط اندروید)

برنامه شما به کاربران اجازه می‌دهد محتوا را در فضای کامل تماشا کنند.

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

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

صدای فضایی

پشتیبانی از صدای فضایی، شامل صدای قفل‌شده با پنل یا صدای فراگیر را در نظر بگیرید.

مشاهده همزمان ویدیو

اگر برنامه شما از چندین پخش همزمان ویدیو پشتیبانی می‌کند، رابط کاربری اطلاعات زیر را به وضوح نشان می‌دهد:

  • کدام جریان‌های ویدیویی خروجی صدا ارائه می‌دهند؟
  • کدام کنترل‌های پخش بر کدام جریان‌های ویدیویی تأثیر می‌گذارند

محیط زیست

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


OpenXR™ و لوگوی OpenXR علائم تجاری متعلق به گروه Khronos هستند و به عنوان یک علامت تجاری در چین، اتحادیه اروپا، ژاپن و بریتانیا ثبت شده‌اند.