Definitionen der Kompatibilitätsstufen
Prüfen Sie anhand der folgenden Kompatibilitätschecklisten und ‑tests, ob Ihre App auf XR‑Headsets und kabelgebundenen XR‑Datenbrillen eine gute Nutzerfreundlichkeit bietet.
Die Checklisten und Tests definieren umfassende Qualitätsanforderungen für die meisten Arten von Android-Apps.
Mit Android XR kompatible mobile App
Eine mit Android XR kompatible mobile App ist eine vorhandene mobile App, die nicht für die Anpassung an ein großes Display oder einen anderen Formfaktor geändert wurde. Diese Art von App ist automatisch mit Android XR kompatibel, sofern sie keine Funktionen erfordert, die nicht unterstützt werden, z. B. Telefonie. Nutzer können kritische Aufgabenabläufe ausführen, aber die Nutzererfahrung ist weniger optimal als bei einer Android XR-App mit Differenzierung.
Diese Art von App wird im Vollbildmodus auf einem Display in der Umgebung des Nutzers ausgeführt, aber das Layout ist bei größeren Displays möglicherweise nicht ideal. Apps, die im Manifest kompakte Größen angeben, werden entsprechend angezeigt. Die App wird nicht im Kompatibilitätsmodus ausgeführt und ist daher nicht letterboxed. Die App bietet eine funktionale Nutzung der wichtigsten Eingabemodalitäten von Android XR (Eye-Tracking + Gesten oder Raycast-Hände) und grundlegende Unterstützung für externe Eingabegeräte wie Tastatur, Maus, Trackpad und Gamecontroller. Möglicherweise kann die Größe nicht geändert werden.
Android XR-kompatible mobile Apps werden automatisch aktiviert und sind im Google Play Store verfügbar. Eine App, die aufgrund nicht unterstützter Funktionsanforderungen nicht kompatibel ist, kann nicht über den Play Store installiert werden.
Mit Android XR kompatible App für große Displays
Eine mit Android XR kompatible App für große Bildschirme ist eine App für große Bildschirme der Stufe 1 oder Stufe 2, in der Layoutoptimierungen für alle Bildschirmgrößen und Gerätekonfigurationen (z. B. große Bildschirme zusätzlich zu Mobilgeräten) implementiert wurden. Außerdem bietet sie eine verbesserte Unterstützung für externe Eingabegeräte und Multitasking. Apps für große Bildschirme, die mit Android XR kompatibel sind, werden automatisch aktiviert und sind im Play Store verfügbar.
Eine mit Android XR kompatible App für große Bildschirme wird im Vollbildmodus auf einem räumlichen Bereich in der Umgebung des Nutzers mit einer Auflösung von 1.024 × 720 dp ausgeführt. Nutzer können auf natürliche Weise mit der App interagieren, indem sie ihre Augen und Hände verwenden. Ansonsten ähnelt sie der App für große Displays.
Differenzierte Android XR-App
Eine für Android XR optimierte App bietet eine Nutzererfahrung, die speziell für XR entwickelt wurde, und implementiert Funktionen, die nur auf XR verfügbar sind. Sie können die Android XR-Funktionen voll ausschöpfen und die Nutzererfahrung Ihrer App verbessern, indem Sie XR-Funktionen (z. B. räumliche Panels) und XR-Inhalte (z. B. 3D-Videos) hinzufügen. Dazu können Sie das Android Jetpack XR SDK, Unity oder OpenXR verwenden.
Mit dem Jetpack XR SDK können Sie XR-spezifische Funktionen wie räumliche Panels, Umgebungen, 3D-Modelle, räumliches Audio, 3D- und räumliche Videos/Fotos, Anker und andere räumliche Benutzeroberflächen wie Orbiters bereitstellen.
Damit eine App als differenzierte Android XR-App gilt, muss sie mindestens eine XR-spezifische Funktion oder XR-spezifische Inhalte implementieren. Für bestimmte Anwendungsfälle gelten möglicherweise zusätzliche Anforderungen an Funktionen und Inhalte. Einzelheiten dazu findest du weiter unten.
Alle Apps, die mit Unity oder OpenXR erstellt wurden, gelten als differenziert. Apps, die mit Unity oder OpenXR entwickelt wurden, müssen Qualitätsmesswerte und Mindestanforderungen erfüllen, um als Android XR-App zu gelten. Eine App mit niedriger Framerate, Abstürzen oder anderen negativen Nutzererfahrungen würde beispielsweise nicht infrage kommen.
Checkliste zur Kompatibilität von Android XR
In diesen Kompatibilitätsprüflisten sind Kriterien definiert, mit denen Sie den Grad der Unterstützung Ihrer App für XR bewerten können. Folgende Supportstufen sind verfügbar:
Mit Android XR kompatible mobile App
Ihre App muss die grundlegenden Qualitätsanforderungen für Apps erfüllen.
Ihre App sollte außerdem alle anwendbaren Richtlinien zur Barrierefreiheit für andere Formfaktoren wie Smartphones und Tablets (z. B. Farbkontrast) einhalten.
Mit Android XR kompatible App für große Displays
Jede Tier 1- oder Tier 2-App für große Bildschirme gilt als Android XR-kompatible App für große Bildschirme. Die Qualitätsrichtlinien für Apps für große Bildschirme bieten einen strukturierten Ansatz, um eine optimale Nutzerfreundlichkeit auf Android XR zu gewährleisten. Gerätezustände wie Drehen oder Ein-/Aufklappen sind jedoch nicht erforderlich.
Für Android XR optimierte App
Da sich Android XR-Apps stark von anderen Apps unterscheiden, gelten einige der aufgeführten Funktionen nur für bestimmte Arten von Apps. Wählen Sie die Funktionen aus, die für Ihre Anwendung geeignet sind. Android-Apps müssen auch den Richtlinien für Android auf großen Bildschirmen und Mobilgeräten entsprechen. Sehen Sie sich die Anforderungen an, die für Ihre Anwendung gelten. Einige davon könnten sich auch in potenzielle Richtlinienaktualisierungen verwandeln.
App-Typ / Anwendungsfall |
Category |
Flächendiagramm |
Anleitung |
|---|---|---|---|
Allgemeine Baseline-Anforderung (Android und OpenXR) |
Datenschutz & Sicherheit |
Kontoanmeldung (Erstnutzung) |
Wenn Ihre App ein Anmeldesystem verwendet, müssen die Anmeldedaten des Nutzers (z. B. der Nutzername) nach erfolgreicher Authentifizierung deutlich angezeigt werden. Das schafft Vertrauen, da das aktive Konto bestätigt wird. Außerdem muss ein leicht zugängliches Menü oder eine Einstellungsseite vorhanden sein, über die Nutzer ihre Kontoinformationen jederzeit aufrufen und verwalten können. |
Sicherheit und Komfort |
Flackern |
Um die Sicherheit und das Wohlbefinden aller Nutzer zu gewährleisten, ist es wichtig, das Risiko von Stroboskopeffekten in Ihrer Anwendung zu minimieren. Vermeiden Sie es, absichtlich Designelemente einzubauen, die Stroboskop-Effekte auslösen können. 1. Wenn ein Stroboskopeffekt unbedingt erforderlich ist, muss die Blinkrate sehr niedrig sein (unter 3 Blinken pro Sekunde) und der blinkende Bereich klein und dezent. 2. Sie sollten die Möglichkeit bieten, die Funktion über die Einstellungen oder Präferenzen zu deaktivieren. 3. Vor dem Auftreten von Stroboskop-Effekten wird eine deutliche Warnmeldung angezeigt. |
|
Bewegungskrankheit vermeiden |
Halten Sie sich an diese Richtlinien, um bei Nutzern keine Reisekrankheit auszulösen:
|
||
Eingang |
Größe der Interaktionsziele |
Interaktive Zielbereiche haben eine Mindestgröße und eine empfohlene Größe, die vom beabsichtigten Interaktionsabstand abhängt:
Wenn Sie das Jetpack XR SDK verwenden, empfehlen wir eine Mindestgröße von 48 × 48 dp und eine empfohlene Tippzielgröße von 56 × 56 dp oder größer. |
|
Technische XR-Funktionen |
Eingabe per Hand |
Ihre App unterstützt die natürliche Handeingabe als grundlegende Interaktionsmethode für Android XR, einschließlich der Anforderungen für Hand-Raycasting und der Unterstützung von Gesten für Eingabeprimitive. Ihre App kann ohne Controller gespielt oder anderweitig verwendet werden, aber Sie können sie auch mit Controllern erweitern. |
|
Boundary (früher Guardian) |
Wenn Nutzer sich in Ihrer App von ihrem Ausgangspunkt (beim Start der App) in ihrem physischen Raum bewegen sollen, wird entweder Passthrough angefordert oder Wenn Ihre App |
||
Leistung |
Rendering |
Ihre App rendert jeden Frame in weniger als 11,1 ms (90 Hz) und weniger als 13,8 ms (72 Hz). |
|
Auflösung |
Ihre App hat eine Auflösung von mindestens 1856 × 2160 Pixeln pro Auge. |
||
App-Startzeit |
Nutzer möchten so schnell wie möglich mit Ihrer App oder Ihrem Spiel interagieren können. Die Definition einer guten Start- oder Ladezeit variiert je nach Kategorie. Grundsätzlich empfehlen wir jedoch, die Zeit zwischen dem Start und der ersten Interaktion zu minimieren. Hier sind die Zieldauern:
Weitere Informationen finden Sie unter App-Startzeit. |
||
ANRs |
Ihre App stürzt nicht ab und blockiert den UI-Thread nicht, was zu ANR-Fehlern („Android Not Responding“) führt. Bei 99,5% der täglichen Sitzungen Ihrer App tritt weniger als ein ANR-Fehler auf. Ihre App verwendet den Pre-Launch-Bericht von Google Play, um potenzielle Stabilitätsprobleme zu erkennen. Achten Sie nach der Bereitstellung auf die Seite „Android Vitals“ in der Google Play Console. |
||
Absturzrate |
Verbrauchen Sie nicht übermäßig viele Systemressourcen, die sich auf das restliche System und andere Apps auswirken. Die Absturzrate sollte bei etwa 1% liegen. |
||
Android App Baseline (XR-differenziert) |
Visuelle Elemente und Nutzererfahrung |
Basic XR |
Ihre App enthält mindestens eine XR-spezifische Funktion oder XR-spezifische Inhalte, um die Nutzererfahrung zu verbessern. Dazu können ein Orbiter, ein oder mehrere räumliche Panels, Umgebungen oder 3D-Objekte gehören. |
Räumliche Bereiche |
Wenn Sie mit Panels Multitasking betreiben (d. h. zwei oder mehr Aufgaben gleichzeitig erledigen), erstellen Sie separate räumliche Panels. Sie würden beispielsweise separate räumliche Panels für Chatfenster und Listen erstellen. |
||
Umgebungen |
Wenn eine virtuelle Umgebung angezeigt wird, kann die Helligkeit ablenkend und ermüdend sein. Ihre App bietet einen sicheren Tonbereich ohne Helligkeitsspitzen, die mit der Benutzeroberfläche in Konflikt stehen oder zu einer Ermüdung der Nutzer führen könnten. Die Benutzeroberfläche ist in alle Richtungen gut lesbar, insbesondere im mittleren horizontalen Bereich des Blickfelds des Nutzers. (Detaillierte Richtlinien werden in Zukunft verlinkt.) |
||
Übergang zwischen Home Space-Modus (HSM) und Full Space-Modus (FSM) |
Wenn Nutzer zum Full Space weitergeleitet werden, bietet Ihre App einen Einstiegspunkt, über den Nutzer schnell zwischen Home Space und Full Space wechseln können. Verwenden Sie ein Symbol oder Label und platzieren Sie die Schaltfläche an einem leicht zugänglichen Ort. |
||
Räumliche Bereiche |
Menüs, Assets und Steuerelemente in einem eigenen Bereich oder Orbiter platzieren. Diese Komponenten dürfen nicht im Hauptbearbeitungsbereich enthalten sein. |
||
Menü-/Listenscrollen |
In Ihrer App werden Scroll-Interaktionen (insbesondere in Karussells oder vertikalen Listen) mit Physik oder Schwung aktualisiert. Beim Scrollen wird beispielsweise Schwung genutzt, sodass sich Inhalte in Karussells und Listen nach einer Nutzerinteraktion noch kurz weiterbewegen, bevor sie allmählich zum Stillstand kommen. Sie bleiben also nicht genau dann stehen, wenn der Nutzer die Eingabe beendet. |
||
Video-/Media-Funktionen |
Visuelle Elemente und Nutzererfahrung |
Spatial Player (nur Android) |
Nutzer können sich Inhalte in Ihrer App im Vollbildmodus ansehen. Entfernen Sie die Wiedergabesteuerelemente aus einem Overlay über dem Inhalt und platzieren Sie sie stattdessen in einem separaten Bereich oder Orbiter. Bei Feldern mit Videowiedergabe können Sie das Seitenverhältnis so anpassen, dass keine schwarzen Balken mehr angezeigt werden. |
Spatial Audio |
Erwäge, Spatial Audio zu unterstützen, einschließlich Panel-Locked Audio oder Surround-Sound. |
||
Gleichzeitige Videowiedergabe |
Wenn Ihre App mehrere gleichzeitige Videostreams unterstützt, muss die Benutzeroberfläche die folgenden Informationen deutlich anzeigen:
|
||
Umgebung |
Wenn Inhalte im Full Space wiedergegeben werden, können Nutzer in Ihrer App entweder den Passthrough-Modus dimmen oder virtuelle Umgebungen auswählen. |
OpenXR™ und das OpenXR-Logo sind Marken von The Khronos Group Inc. und sind als Marke in China, der Europäischen Union, Japan und dem Vereinigten Königreich eingetragen.