Problemdiagnose und Berichterstattung
Dieses Kapitel beschreibt hauptsächlich Probleme, die beim Erstellen von AR-Anwendungen auftreten können, die wichtigsten Analysemethoden sowie die Informationen und Kontaktwege, die beim Melden von Problemen gesammelt werden müssen.
Herausforderungen der Problemanalyse in AR-Szenarien
Die Problemanalyse in AR-Szenarien hat einige besondere Herausforderungen.
Unsicherheit der Eingabe
In traditionellen Anwendungen besteht die Eingabe normalerweise aus deterministischen Klicks oder Tastaturereignissen. In AR stammt die Eingabe jedoch aus einer sich verändernden physischen Umgebung, was die Analyse erheblich erschwert. AR-Anwendungen müssen zusammen mit der physischen Umgebung verwendet werden, aber während Entwicklung und Tests ist es in dieser Umgebung unmöglich, jedes Mal dieselbe Eingabe zu erhalten. Selbst bei derselben Bewegungsroute können Kamerabilder und Sensordaten wie Beschleunigungsmesser und Gyroskop variieren, und diese Änderungen können die tracking-Ergebnisse stark beeinflussen.
EasyAR bietet Funktionen zum Aufzeichnen und Wiedergeben von EIF-Dateien, die die Eingabeunsicherheit bis zu einem gewissen Grad verringern können. Aufgrund der Unsicherheit der Algorithmen bleibt das endgültige tracking-Ergebnis jedoch grundsätzlich unsicher. Außerdem können unvollständige EIF-Aufzeichnungsabdeckung, Lichtänderungen und dynamische Verdeckungen durch Fußgänger oder Fahrzeuge die tracking-Qualität im tatsächlichen Einsatz beeinflussen.
Unsicherheit des Algorithmus
Die Kernalgorithmen von AR sind visuelle Algorithmen, zum Beispiel SLAM (simultaneous localization and mapping). Diese Algorithmen sind ihrem Wesen nach probabilistisch und nicht deterministisch.
Wenn das Eingabebild der Kamera keine deutlichen Merkmale enthält, kann der Algorithmus historische Position und pose sowie Sensordaten wie Beschleunigungsmesser und Gyroskop für Vorhersagen verwenden. Die vorhergesagten Positionen und poses akkumulieren sich mit der Zeit und erzeugen drift. Jedes Vorhersageergebnis hängt mit äußeren Faktoren wie Dateneingabezeitpunkt, Gerätetemperatur, CPU-Frequenz und Netzwerkübertragungsgeschwindigkeit zusammen. Diese Faktoren ändern sich dynamisch, sodass selbst bei gleicher Eingabe mehrere Ausführungen stark unterschiedliche Ergebnisse liefern können.
Analysemethoden für verschiedene Probleme
Verschiedene Probleme können unterschiedliche Analysemethoden erfordern.
Logs
Wenn das Programm nicht normal läuft, etwa bei schwarzem Bildschirm, fehlgeschlagener localization oder nicht normalem tracking, ist die grundlegendste Methode das Prüfen der Logs auf Fehlermeldungen. Von EasyAR erzeugte Logs verwenden bestimmte Tags, damit sie leicht zu erkennen sind.
Abstürze
Manchmal stürzt das Programm ab. Die Absturzstelle kann im Bibliothekscode oder im eigenen Code des Programms liegen. Ursache kann ein Problem im Programm selbst oder ein Problem in der Bibliothek sein.
Visuelle Anomalien wie Zittern und Springen
Aufgrund der Genauigkeit der Sensordaten oder der Anpassung des Algorithmus können localization-Zittern oder Sprünge auftreten. Versuchen Sie in diesem Fall, das Problem auf verschiedenen Geräten zu reproduzieren, und erfassen Sie Screenshots, Bildschirmaufnahmen und EIF-Dateien.
Plattformspezifische Leitfäden
Problemdiagnose und Berichterstattung hängen eng mit der Plattform zusammen. Lesen Sie je nach Zielplattform die folgenden Leitfäden:
- Loganalyse for Android
- Loganalyse for iOS/macOS/visionOS
- Loganalyse for Windows
- Absturzanalyse for Android
- Absturzanalyse for iOS/macOS/visionOS
- Absturzanalyse for Windows
- Analyse visueller Anomalien wie Zittern und Springen: Screenshots und Bildschirmaufnahmen
- Analyse visueller Anomalien wie Zittern und Springen: Bildschirmaufnahme für XR-Headsets
- Analyse visueller Anomalien wie Zittern und Springen: Anomalien mit EIF reproduzieren
- Unity-Einführung
- Unity UI-Meldungen
- Unity Entwicklermodus
- Unity EED dump-Dateien aufzeichnen
- Unity issue report
- Unity Diagnostics Controller Komponentenreferenz