Pedoman kualitas aplikasi untuk pengalaman imersif memperluas standar seluler kualitas aplikasi inti dasar.
Pedoman kualitas dan kebijakan aplikasi ini berfokus pada interaksi dan kapabilitas spasial yang unik untuk platform Android XR di headset XR dan kacamata XR berkabel, seperti yang diuraikan dalam definisi tingkat kompatibilitas, checklist, dan Kebijakan Aplikasi Android XR. Tinjau bagian ini untuk memastikan bahwa aplikasi Anda memberikan pengalaman pengguna yang luar biasa di headset XR dan kacamata XR berkabel.
Pengalaman imersif: definisi tingkat kompatibilitas
Tinjau definisi tingkat kompatibilitas berikut untuk memahami tingkat dukungan yang diberikan aplikasi Anda untuk pengalaman imersif di headset XR dan kacamata XR berkabel.
Aplikasi seluler yang kompatibel dengan Android XR
Aplikasi seluler yang kompatibel dengan Android XR mewakili aplikasi seluler yang ada dan belum dimodifikasi untuk beradaptasi dengan perangkat layar besar atau faktor bentuk lainnya. Jenis aplikasi ini otomatis kompatibel dengan Android XR selama tidak memerlukan fitur yang tidak didukung, seperti telepon. Pengguna dapat menyelesaikan alur tugas penting, tetapi dengan pengalaman pengguna yang kurang optimal dibandingkan dengan aplikasi Android XR yang terdiferensiasi.
Jenis aplikasi ini berjalan dalam layar penuh di panel dalam lingkungan pengguna, tetapi tata letaknya mungkin tidak ideal pada ukuran yang lebih besar. Aplikasi yang menentukan ukuran ringkas dalam manifes akan muncul sebagaimana mestinya. Aplikasi tidak berjalan dalam mode kompatibilitas, sehingga tidak memiliki tampilan lebar. Aplikasi memiliki pengalaman fungsional modalitas input inti yang disediakan oleh Android XR (pelacakan gerak mata + gestur atau tangan raycast) dan dukungan dasar untuk perangkat input eksternal, termasuk keyboard, mouse, trackpad, dan pengontrol game. Partisi ini mungkin dapat diubah ukurannya atau tidak.
Aplikasi seluler yang kompatibel dengan Android XR otomatis diikutsertakan dan tersedia di Google Play Store. Aplikasi yang tidak kompatibel karena persyaratan fitur yang tidak didukung tidak dapat diinstal melalui Google Play Store.
Aplikasi adaptif yang kompatibel dengan Android XR
Aplikasi adaptif yang kompatibel dengan Android XR adalah aplikasi yang telah menerapkan pengoptimalan tata letak untuk semua ukuran layar dan konfigurasi perangkat (misalnya, layar besar selain perangkat seluler), beserta dukungan yang ditingkatkan untuk perangkat input eksternal dan multitasking. Aplikasi memenuhi persyaratan ini jika aplikasi tersebut dioptimalkan untuk adaptif Tingkat 2 atau dibedakan untuk adaptif Tingkat 1 untuk desktop, tablet, atau perangkat foldable.
Aplikasi adaptif yang kompatibel dengan Android XR akan otomatis diikutsertakan dan tersedia di Google Play Store.
Aplikasi Android XR yang berbeda
Aplikasi Android XR yang terdiferensiasi memiliki pengalaman pengguna yang dirancang secara eksplisit untuk XR dan mengimplementasikan fitur yang hanya ditawarkan di XR. Anda dapat memanfaatkan kemampuan Android XR sepenuhnya dan membedakan pengalaman aplikasi Anda dengan menambahkan fitur XR (seperti panel spasial), menambahkan konten XR (seperti video 3D) ke aplikasi Anda dengan mengembangkan menggunakan Android Jetpack XR SDK, Unity, Godot, Unreal Engine, atau OpenXR.
Anda dapat menggunakan Jetpack XR SDK untuk menyediakan kemampuan khusus XR seperti:
- Panel spasial
- Lingkungan
- Model 3D
- Audio spasial
- Video dan foto 3D atau spasial
- Anchor
- UI spasial lainnya seperti orbiter
Agar dapat dianggap sebagai aplikasi Android XR yang berbeda, aplikasi harus menerapkan setidaknya satu fitur khusus XR atau bagian konten khusus XR. Untuk kasus penggunaan tertentu, mungkin ada lebih banyak persyaratan fitur dan konten. Lihat detailnya di bagian berikutnya.
Semua aplikasi yang dibuat dengan Unity, Godot, Unreal Engine, atau OpenXR dianggap berbeda asalkan memenuhi metrik kualitas dan persyaratan minimum untuk dianggap sebagai aplikasi Android XR yang berbeda. Misalnya, aplikasi dengan kecepatan frame rendah, error, atau pengalaman pengguna negatif lainnya tidak akan memenuhi syarat.
Membantu pengguna menemukan aplikasi Anda di Google Play Store dengan badge
Aplikasi yang terdiferensiasi Android XR otomatis mendapatkan badge "Dibuat untuk XR" di Google Play Store untuk membantu pengguna menemukan pengalaman XR berkualitas tinggi.
Pengalaman imersif: checklist kompatibilitas
Untuk memastikan aplikasi Anda memberikan pengalaman pengguna yang baik di headset XR dan kacamata XR berkabel, tinjau checklist dan pengujian kompatibilitas berikut.
Checklist dan pengujian ini menentukan serangkaian persyaratan kualitas yang komprehensif untuk sebagian besar jenis aplikasi Android.
Aplikasi seluler yang kompatibel dengan Android XR
Aplikasi Anda harus memenuhi persyaratan kualitas aplikasi inti.
Aplikasi Anda juga harus mematuhi semua pedoman aksesibilitas yang berlaku untuk faktor bentuk lain seperti ponsel dan tablet (misalnya, kontras warna).
Aplikasi adaptif yang kompatibel dengan Android XR
Aplikasi apa pun yang dioptimalkan adaptif Tingkat 2 atau dibedakan adaptif Tingkat 1 untuk desktop, tablet, atau perangkat foldable juga dianggap sebagai aplikasi adaptif yang kompatibel dengan Android XR. Pedoman kualitas aplikasi adaptif menawarkan pendekatan terstruktur untuk memastikan pengalaman yang luar biasa di Android XR, tetapi pertimbangan status perangkat seperti rotasi atau melipat/membentangkan tidak diperlukan.
Aplikasi yang dibedakan Android XR
Karena aplikasi yang dibedakan untuk Android XR sangat terdiferensiasi, beberapa kemampuan yang tercantum hanya berlaku untuk jenis aplikasi tertentu. Pilih kemampuan yang sesuai untuk aplikasi Anda. Aplikasi Android juga harus mematuhi pedoman kualitas aplikasi adaptif. Lihat persyaratan yang sesuai untuk aplikasi Anda.
Anda juga harus mengikuti panduan dalam mendesain aplikasi yang dibedakan XR untuk mendapatkan pengalaman pengguna terbaik.
Jenis aplikasi & kasus penggunaan |
Kategori |
Area |
Panduan |
|---|---|---|---|
Persyaratan Dasar Umum (Android & OpenXR) |
Privasi & Keamanan |
Login akun (UX pertama kali) |
Jika aplikasi Anda menggunakan sistem login, tampilkan kredensial login pengguna dengan jelas (misalnya, kredensial nama pengguna) setelah autentikasi berhasil. Hal ini akan meningkatkan kepercayaan dengan mengonfirmasi akun yang aktif. Selain itu, sertakan menu atau halaman setelan yang mudah diakses yang memungkinkan pengguna melihat dan mengelola informasi akun mereka kapan saja. |
Keamanan dan Kenyamanan |
Strobing |
Untuk memastikan keamanan dan kesehatan semua pengguna, penting untuk meminimalkan risiko efek strobo dalam aplikasi Anda. Hindari menyertakan elemen desain apa pun yang dapat menyebabkan efek strobo secara sengaja. 1. Jika efek strobo benar-benar diperlukan, pastikan kecepatan kedipan sangat rendah (di bawah 3 kedipan per detik) dan area kedipan kecil serta tidak mencolok. 2. Sebaiknya berikan kemampuan untuk menonaktifkannya melalui setelan atau preferensi. 3. Tampilkan pesan peringatan yang jelas sebelum strobo terjadi. |
|
Menghindari mabuk perjalanan |
Ikuti panduan berikut untuk menghindari mabuk perjalanan pada pengguna:
|
||
Lebih redup |
Hormati setelan peredup yang ditetapkan pengguna untuk mencegah bahaya keselamatan. Anda dapat menyesuaikan peredup untuk pengalaman yang optimal bagi aplikasi Anda, tetapi pengguna dapat menggantinya secara manual kapan saja. |
||
Input |
Ukuran target interaksi |
Target yang dapat berinteraksi memiliki ukuran minimum dan ukuran yang direkomendasikan berdasarkan jarak interaksi yang diinginkan:
Saat menggunakan Jetpack XR SDK, sebaiknya gunakan ukuran minimum 48 x 48 dp, dengan ukuran target ketuk yang direkomendasikan 56 x 56 dp atau lebih besar. |
|
Fungsi Teknis XR |
Input tangan |
Aplikasi Anda mendukung input tangan alami sebagai metode interaksi dasar untuk Android XR, termasuk persyaratan raycast tangan dan dukungan gestur untuk primitif input. Aplikasi Anda dapat dimainkan atau digunakan tanpa memerlukan pengontrol, tetapi dapat ditingkatkan dengan penggunaannya jika Anda memilih untuk melakukannya. |
|
Batas |
Jika aplikasi Anda terutama berfokus pada dunia nyata ( Jika aplikasi Anda terutama berfokus pada dunia virtual ( Jika aplikasi Anda menggunakan Kacamata XR: Tidak ada batas pada perangkat kacamata XR. |
||
Performa |
Rendering |
Aplikasi Anda merender setiap frame antara <11,1 md (90 Hz) dan <13,8 md (72 Hz). |
|
Resolusi |
OpenXR & Engine: Buat kueri |
||
Waktu mulai aplikasi |
Pengguna ingin dapat berinteraksi dengan aplikasi atau game Anda secepat mungkin. Definisi waktu mulai atau pemuatan yang baik bervariasi menurut kategori, tetapi sebagai prinsip umum, sebaiknya minimalkan waktu antara peluncuran dan interaksi pertama. Lihat target durasi di bawah:
Untuk mengetahui detail selengkapnya, lihat Waktu startup aplikasi. |
||
ANR |
Aplikasi Anda tidak mengalami error atau memblokir UI thread yang menyebabkan error ANR ("Android Tidak Merespons"). Aplikasi Anda memiliki <1 ANR dalam 99,5% sesi harian. Aplikasi Anda menggunakan laporan pra-peluncuran Google Play untuk mengidentifikasi potensi masalah stabilitas. Setelah deployment, perhatikan halaman Android Vitals di Konsol Google Play. |
||
Rasio error |
Jangan menggunakan resource sistem secara berlebihan yang memengaruhi bagian sistem lainnya dan aplikasi lain, dengan mempertahankan rasio error sekitar 1%. |
||
Android App Baseline (XR-differentiated) |
Visual & Pengalaman Pengguna |
XR Dasar |
Aplikasi Anda menerapkan setidaknya satu fitur khusus XR atau konten khusus XR untuk meningkatkan pengalaman pengguna. Hal ini dapat mencakup orbiter, satu atau beberapa panel spasial, lingkungan, atau objek 3D. |
Panel spasial |
|
||
Lingkungan |
Saat menampilkan lingkungan virtual, kecerahan dapat mengganggu dan melelahkan. Aplikasi Anda menampilkan rentang tonal yang aman tanpa lonjakan kecerahan yang bertentangan dengan UI atau dapat menyebabkan kelelahan pengguna. UI dapat dibaca di semua arah, terutama dalam rentang horizontal tengah pandangan pengguna. (Pedoman mendetail akan ditautkan pada masa mendatang) |
||
Tema UI |
Gunakan tema gelap secara default atau sangat disarankan; aplikasi dengan tema terang akan terlihat sangat terang, gagal berintegrasi ke dalam lingkungan pengguna, dan menguras baterai lebih cepat. Untuk kacamata XR, selalu terapkan tema gelap karena sistem menggunakan tema gelap secara default. |
||
Transisi antara Ruang Utama (HSM) dan Ruang Penuh (FSM) |
Saat mengarahkan pengguna ke Ruang Penuh, aplikasi Anda memiliki titik entri bagi pengguna untuk beralih dengan cepat antara Ruang Utama dan Ruang Penuh. Gunakan ikon atau label, dan tempatkan tombol di lokasi yang mudah diakses. |
||
Men-scroll menu & daftar |
Aplikasi Anda memperbarui interaksi scroll (terutama melalui carousel atau daftar vertikal) agar memiliki fisika atau momentum. Misalnya, scroll menyertakan momentum, sehingga konten dalam carousel dan daftar terus bergerak sebentar setelah interaksi pengguna sebelum berhenti secara bertahap (bukan berhenti tepat saat pengguna menghentikan input). |
||
Fungsi Video & Media |
Visual & Pengalaman Pengguna |
Pemutar spasial (khusus Android) |
Aplikasi Anda memungkinkan pengguna menonton konten dalam Ruang Penuh. Hapus kontrol pemutaran dari overlay di atas konten dan tempatkan di panel atau orbiter khusus. Untuk panel dengan pemutaran video, tetapkan rasio aspek untuk menghapus letterbox. |
Audio spasial |
Pertimbangkan untuk mendukung audio spasial, termasuk audio yang dikunci panel atau suara surround. |
||
Menonton video secara bersamaan |
Jika aplikasi Anda mendukung beberapa streaming video secara bersamaan, antarmuka pengguna akan memperjelas informasi berikut:
|
||
Lingkungan |
Saat memutar konten video dalam Ruang Penuh, aplikasi Anda memungkinkan pengguna meredupkan passthrough (atau memilih lingkungan virtual di perangkat yang didukung). |
Kebijakan Aplikasi Android XR
Semua aplikasi harus mematuhi persyaratan dalam kebijakan berikut untuk mendukung pengalaman pengguna yang aman dan layak di perangkat imersif seperti headset XR dan kacamata XR berkabel.
Keamanan aplikasi
Sebagai pengingat, semua aplikasi yang didistribusikan melalui Google Play harus mematuhi semua Kebijakan Developer Google Play.
Aktivitas berikut sangat dilarang, dan aplikasi tidak boleh memfasilitasi atau mempromosikan aktivitas ini:
- Penyebaran informasi pribadi
- Pengenalan wajah atau identifikasi biometrik
- Pengawasan
- Pembuatan atau penyebaran Penggambaran Adegan Intim Non-Konsensual (NCII)
Perlindungan pengamat berikut diperlukan untuk semua aplikasi:
Keamanan kamera
Aplikasi yang mengakses kamera harus menghormati privasi orang di sekitar dan harus mematuhi hal berikut:
Interaksi yang dilarang |
Deskripsi |
|---|---|
Identifikasi wajah & doxxing real-time |
Aplikasi tidak boleh menggunakan sensor kamera untuk menjalankan identifikasi wajah guna menampilkan Informasi Identitas Pribadi (PII) orang di sekitar. Misalnya: nama, alamat rumah, nomor telepon, atau perusahaan tempat mereka bekerja. |
Pembuatan konten ilegal atau penggambaran adegan intim non-konsensual (NCII) |
Aplikasi tidak boleh menggunakan sensor kamera untuk memfasilitasi pembuatan penggambaran adegan intim non-konsensual (NCII) atau pembuatan konten ilegal apa pun (misalnya, CSAM). |
Keamanan audio
Aplikasi yang menggunakan susunan mikrofon harus menghormati privasi orang di sekitar dan harus mematuhi hal berikut:
Interaksi yang dilarang |
Deskripsi |
|---|---|
Penyadapan persisten |
Aplikasi tidak boleh mempertahankan perekaman atau transkripsi audio latar belakang yang persisten saat pengguna tidak secara aktif berinteraksi dengan aplikasi dalam tugas yang dimulai pengguna. |
Identifikasi ucapan |
Aplikasi tidak boleh menggunakan susunan mikrofon untuk mengidentifikasi suara orang yang tidak memakai perangkat atau orang di sekitar. |
Perilaku LED
Aplikasi tidak boleh melakukan hal berikut sehubungan dengan LED yang menghadap ke pengguna dan dunia pada perangkat:
Interaksi yang dilarang |
Deskripsi |
|---|---|
Penghapusan atau modifikasi terprogram |
Aplikasi tidak boleh mengubah, meredupkan, atau menonaktifkan perilaku LED yang menghadap ke dunia dan LED yang ditampilkan kepada pengguna yang diterapkan sistem berdasarkan akses mikrofon dan kamera. Aplikasi juga tidak boleh mendorong atau mengarahkan pengguna untuk mengubah, meredupkan, atau menonaktifkan perilaku LED. |
Mengabaikan deteksi gangguan dan perusakan |
Aplikasi tidak boleh mengabaikan atau mengganggu, atau mendorong atau mengarahkan pengguna untuk melakukannya, algoritma deteksi penghalang perangkat, yang dirancang untuk menghentikan perekaman secara terprogram jika LED yang menghadap ke dunia tertutup atau rusak secara fisik. |
OpenXR™ dan logo OpenXR adalah merek dagang yang dimiliki oleh The Khronos Group Inc. dan terdaftar sebagai merek dagang di China, Uni Eropa, Jepang, dan Inggris Raya.