Definitionen der Kompatibilitätsstufen
Damit deine App auf Android XR-Geräten eine gute Nutzerfreundlichkeit bietet, solltest du die folgenden Kompatibilitätschecklisten und ‑tests durchgehen.
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 einen großen Bildschirm 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 Alleinstellungsmerkmalen.
Diese Art von App wird im Vollbildmodus auf einem Panel in der Umgebung des Nutzers ausgeführt. Das Layout ist jedoch möglicherweise nicht ideal für größere Displays. Apps, in deren Manifest kompakte Größen angegeben sind, 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 Controller. Die Größe kann möglicherweise 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.
Für Android XR kompatible App für große Displays
Eine für Android XR kompatible App für große Displays ist eine App der Stufe 1 oder Stufe 2 für große Displays, in der Layoutoptimierungen für alle Bildschirmgrößen und Gerätekonfigurationen (z. B. große Displays zusätzlich zu Mobilgeräten) sowie eine erweiterte Unterstützung für externe Eingabegeräte und Multitasking implementiert wurden. Apps für große Bildschirme, die mit Android XR kompatibel sind, werden automatisch aktiviert und sind im Play Store verfügbar.
Eine Android XR-kompatible App für große Bildschirme wird im Vollbildmodus auf einem räumlichen Panel in der Umgebung des Nutzers mit einer Auflösung von 1024 × 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 Benutzeroberfläche, 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, Raumklang, 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 können zusätzliche Funktionen und Inhaltsanforderungen gelten. 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 Android XR-Kompatibilität
In diesen Kompatibilitätsprüflisten werden Kriterien definiert, mit denen Sie den Grad der Unterstützung für XR in Ihrer App 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 auch alle anwendbaren Bedienungshilfen-Richtlinien für andere Formfaktoren wie Smartphones und Tablets einhalten (z. B. Farbkontrast).
Für Android XR kompatible App für große Displays
Jede Tier 1- oder Tier 2-App für große Displays gilt als Android XR-kompatible App für große Displays. Die Qualitätsrichtlinien für Apps für große Displays 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. Ebenso wird unter Android XR kein Stylus unterstützt.
Für Android XR optimierte App
Da sich Android XR-Apps stark 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 Displays und Mobilgeräten entsprechen. Sehen Sie sich die Anforderungen an, die für Ihre Anwendung gelten. Einige davon könnten auch zu potenziellen Richtlinienaktualisierungen führen.
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 Wohlergehen 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 auf dem beabsichtigten Interaktionsabstand basiert:
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 die Verwendung von Controllern ist möglich. |
|
Boundary (früher Guardian) |
Wenn Nutzer sich in Ihrer App von ihrem Startpunkt (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 Pixel 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, wodurch ANR-Fehler („Android Not Responding“) verursacht werden. Bei Ihrer App tritt in 99,5% der täglichen Sitzungen 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-differentiated) |
Visuelle Elemente und Nutzererfahrung |
Basic XR |
Ihre App implementiert mindestens eine XR-spezifische Funktion oder einen XR-spezifischen Inhalt, um die Nutzererfahrung zu verbessern. Dazu können ein Orbiter, ein oder mehrere räumliche Panels, Umgebungen oder 3D-Objekte gehören. |
Räumliche Panels |
Wenn Sie mit Panels mehrere Aufgaben gleichzeitig erledigen, sollten Sie separate räumliche Panels erstellen. 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 Panels |
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 durch Karussells oder vertikale 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-/Mediafunktionen |
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. Legen Sie für Bereiche mit Videowiedergabe das Seitenverhältnis fest, um Letterboxing zu entfernen. |
Spatial Audio |
Unterstützen Sie Spatial Audio, 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 |
Bei der Wiedergabe von Inhalten im Full Space 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 in China, der Europäischen Union, Japan und dem Vereinigten Königreich als Marke eingetragen.