Mega positionsbestimmungs-fehlerbehebung leitfaden
Mega basiert auf fortschrittlichen visuellen positionsbestimmungs-algorithmen und erreicht hochpräzise positionsbestimmung durch cloud-basierte Mega Block abfrage und visuellen merkmal-abgleich. Daher kann es in der praktischen anwendung aufgrund verschiedener faktoren wie konfigurationsfehlern, umweltveränderungen oder netzwerkschwankungen zu positionsbestimmungs-fehler kommen.
Dieses dokument zielt darauf ab, ihnen zu helfen, den positionsbestimmungs-status schnell zu beurteilen, zwischen "normalem warten" und "abnormalem fehler" zu unterscheiden und eine schnelle diagnose basierend auf den drei hauptfaktoren konfiguration, umgebung und service durchzuführen.
Lokalisierungsprozess
Sie müssen im Zielgebiet Kartierungsdaten erfassen und einen Mega Block erstellen, den rekonstruierten Mega Block zur Lokalisierungsbibliothek hinzufügen sowie die Verfügbarkeit der Lokalisierungsbibliothek bestätigen.
In Bereichen mit bereits erstelltem Mega Block, bei guter Lichtverhältnissen, reichhaltigen Merkmalen und normaler Netzwerkverbindung gelingt die Lokalisierung üblicherweise innerhalb von Sekunden. Nach erfolgreicher Lokalisierung werden die aktuelle Geräteposition und -ausrichtung innerhalb des Mega Blocks zurückgegeben.
Lokalisierungsstatus bestimmen
Wenn Sie Mega Toolbox zur Überprüfung der Lokalisierungsergebnisse verwenden, können Sie den Lokalisierungsstatus direkt einsehen

Wenn Sie Unity-Entwickler sind und bei der Lokalisierung Probleme auftreten, können Sie die spezifischen Informationen
MegaTrackerLocalizationStatusauf dem Bildschirm überprüfen. Falls diese nicht angezeigt werden, müssen Sie die Diagnoseinformationen aktivieren.
Mögliche Werte von MegaTrackerLocalizationStatus
| Konstante | Wert | Beschreibung |
|---|---|---|
| UnknownError | 0 | Unbekannter Fehler |
| Found | 1 | Block lokalisiert |
| NotFound | 2 | Block nicht gefunden |
| RequestTimeout | 3 | Anforderungs-Timeout (über 1 Minute) |
| RequestIntervalTooLow | 4 | Anforderungsintervall zu kurz |
| QpsLimitExceeded | 5 | QPS-Limit überschritten |
| WakingUp | 6 | Dienst wird gestartet |
| MissingSpotVersionId | 7 | SpotVersionId fehlt, möglicherweise nicht gesetzt |
| ApiTokenExpired | 8 | API-Token abgelaufen |
Lösungen für die oben genannten Ausnahmen:
- Anforderungs-Timeout: Netzwerksituation prüfen und beheben. Bei Bedarf kann das Anforderungs-Timeout
MegaRequestTimeParameters.Timeouterhöht werden. Schlechte Netzwerkbedingungen können jedoch die Tracking-Qualität beeinträchtigen, daher sollten Netzwerkprobleme möglichst behoben werden. - Anforderungsintervall zu kurz: Anforderungsintervall reduzieren
- Verbindungs- oder Übertragungsfehler: Netzwerksituation prüfen und beheben
- QPS-Limit überschritten: Kontaktieren Sie EasyAR-Geschäftspartner zur QPS-Erweiterung
- Dienst wird gestartet: System startet, bitte warten und später erneut versuchen
- SpotVersionId fehlt: Bitte SpotVersionId konfigurieren
- API-Token abgelaufen: Generieren Sie API-Token im EasyAR-Admin-Backend neu
UnknownError tritt häufig in zwei Fällen auf:
- Verbindungs- oder Übertragungsfehler
- Dienst gab eine Ausnahme zurück
Bei UnknownError können detaillierte Informationen über MegaLocalizationResponse.ErrorMessage abgerufen werden
Häufige fehlerklassifizierung und problembehebung
Basierend auf dem zurückgegebenen Status und den Symptomen lassen sich häufige Probleme in die folgenden drei Kategorien einteilen: Konfigurationsprobleme, Umweltfaktoren und der Dienst selbst.
Konfigurationsprobleme
Diese Art von Problemen tritt typischerweise während der Entwicklungs- und Integrationsphase auf und äußert sich darin, dass der Dienst überhaupt nicht starten kann.
Lizenzbezogene Hinweise
Falls während der Entwicklung oder des Tests in Protokollen oder Bildschirmmeldungen Probleme wie Lizenz, Ungültiger Schlüssel usw. angezeigt werden, können die Ursachen sein: Nicht übereinstimmende AppID/BundleID, abgelaufene Lizenz, nicht passendes Paket usw. Überprüfen Sie bitte Ihre Lizenz-Einstellungen anhand der folgenden Tabelle.
| Fehler | Lösung |
|---|---|
| Ungültiger Schlüssel: Keine übereinstimmende Bundle-ID | Bundle-ID und Lizenzschlüssel stimmen nicht überein. Ändern Sie eine der beiden, um Übereinstimmung zu erreichen |
| Ungültiger Schlüssel: Kein übereinstimmender Paketname | Bundle-ID und Lizenzschlüssel stimmen nicht überein. Ändern Sie eine der beiden, um Übereinstimmung zu erreichen |
| Ungültiger Schlüssel: Lizenz gilt nicht für die aktuelle Variante | Es wurde ein Enterprise-SDK mit einem Nicht-Enterprise-Lizenzschlüssel verwendet oder umgekehrt |
| Ungültiger Schlüssel: Lizenz für eine alte Version gilt nicht | Lizenzversion ist zu alt. Erstellen Sie bitte eine neue Lizenz |
| Ungültiger Schlüssel: Ungültiges Format | Lizenzformat ist fehlerhaft, z.B. nicht vollständig kopiert |
| Ungültiger Schlüssel: Serververifizierung fehlgeschlagen | Lizenz wurde gelöscht oder hat keine Geräteberechtigung. Bei Verwendung auf einer XR-Brille kontaktieren Sie bitte den Vertrieb, um Berechtigung hinzuzufügen |
| Lizenz gilt nicht für XR-Brillen | Lizenz kann nicht auf einer XR-Brille verwendet werden. Bitte verwenden Sie eine XR-Lizenz |
| Lizenz ist abgelaufen | Die Lizenz ist abgelaufen |
Darüber hinaus sollten Sie beachten, dass Testversionen der Lizenz Einschränkungen unterliegen. Die Nutzung der kostenpflichtigen Version von EasyAR Sense und der kostenpflichtigen EasyAR Mega-Dienste kann dieses Problem lösen. Wenn Sie bereits die kostenpflichtige Version von EasyAR Sense verwenden, können Sie diesen Hinweis ignorieren oder den entsprechenden Text direkt aus dem Beispiel entfernen.
Kamera-Bild-Anomalie
Beim Entwickeln oder Testen einer EasyAR Mega-Anwendung können Probleme wie ein Schwarzbildschirm, Abstürze oder fehlende Kamerabilder auftreten. Bitte gehen Sie wie folgt vor, um systematisch zu prüfen und Informationen zu sammeln.
- Versuchen Sie, das Problem selbst zu lösen
Wenn Sie mit Unity entwickeln oder testen, stellen Sie sicher, dass im AR Session (EasyAR) -> Inspector das Kontrollkästchen Diagnostics Controller (Script) aktiviert ist, um Diagnoseinformationen einzuschalten.

Überprüfen Sie den Bildschirminhalt oder die Protokolle, ob es klare Textmeldungen auf der Benutzeroberfläche gibt.
In den meisten Fällen sind die Fehlermeldungen selbsterklärend. Wenn der Bildschirm oder die Protokolle die Ursache angeben, können Sie diese entsprechend beheben. Zum Beispiel:
cameraDevice.openWithPreferredType fail(Überprüfen Sie, ob die Kamera funktioniert).Wenn "Nicht unterstützt" angezeigt wird (z. B. Gerät unterstützt ARCore nicht oder eine andere Funktion), handelt es sich um eine normale Einschränkung, und es ist keine weitere Fehlersuche erforderlich.
Das Problem kann nicht selbst gelöst werden
Bitte versuchen Sie zunächst, das Problem mit den vorhandenen Informationen selbst zu lösen. Wenn dies nicht möglich ist, um dem EasyAR-Support die schnelle Fehlerdiagnose zu ermöglichen, stellen Sie bitte unbedingt detaillierte, reproduzierbare technische Informationen bereit. Beschreiben Sie nicht nur das Phänomen wie "Schwarzbildschirm". Empfohlene Rückmeldungen umfassen:
- Vollständige Protokolle: Unity oder Sense-Protokolle.
- Bildschirmfotos oder Bildschirmaufnahmen: Vollständiger Bildschirm bei Schwarzbildschirm. Wenn Diagnoseinformationen vorhanden sind, stellen Sie sicher, dass diese sichtbar sind und machen Sie einen Screenshot.
- Detaillierte Geräteinformationen: Gerätemodell (z. B. iPhone 15, HUAWEI P40), Betriebssystemversion (z. B. iOS 17.1, Android 14), EasyAR Sense-Version, EasyAR Sense Unity Plugin-Version, Unity-Version usw.
Nicht vor Ort ausgeführt, weiterhin NotFound
Entwickler testen mit Simulatoren oder Bildschirmaufnahmen im Büro, können das Problem aber nicht lokalisieren. Möglicherweise ist der MegaLocationInputMode auf Onsite gesetzt, wird aber nicht vor Ort ausgeführt. Wählen Sie während der Entwicklung basierend auf dem Mega-Standort-Eingabemodus den korrekten Modus:
| Constant | Value | Description |
|---|---|---|
| Onsite | 0 | Eingabemodus für den Einsatz vor Ort. Standortdaten werden normalerweise vom Gerät bezogen und an Mega übergeben, typischerweise intern von FrameFilter verarbeitet |
| Simulator | 1 | Eingabemodus für die Fernnutzung. Standortdaten müssen als Vor-Ort-Daten simuliert und über die entsprechende Schnittstelle an Mega übergeben werden (optional) |
| FramePlayer | 2 | Eingabemodus bei Verwendung des FramePlayer. Dieser Modus ist schreibgeschützt |
Umweltfaktoren verursacht
Dieses Problem äußert sich darin, dass der Dienst normal funktioniert, die Standortbestimmung jedoch kontinuierlich NotFound zurückgibt.
Bei kontinuierlicher Ausrichtung auf weiße Wände oder Böden wird NotFound angezeigt
Wenn die Kamerabildfläche großflächig weiße Wände, Glas oder einfarbige Böden zeigt, wird kontinuierlich der Status NotFound zurückgegeben.
Ursache: Die visuelle Positionierung ist auf texturierte Merkmale angewiesen. In schwach texturierten Bereichen können keine Merkmalspunkte extrahiert werden.
Lösung: Dies ist ein normales Verhalten. Bewegen Sie die Kamera zur Initialisierung in Richtung texturreicher Bereiche.
Vor Ort und texturreich, aber dauerhaft NotFound
Person ist vor Ort, richtet sich auf einen strukturierten Bereich aus, kann aber längere Zeit keine erfolgreiche Lokalisierung erreichen.
Mögliche Ursachen:
- Szenenveränderung: Die aktuelle Umgebung vor Ort (z.B. Renovierung, Plakatwechsel, starke Lichtveränderungen) weicht zu stark von der Szenerie während der Kartenerstellung ab.
- Nicht erfasster Bereich: Die Position, an der der Benutzer steht, liegt außerhalb des während der ursprünglichen Erfassung und Kartenerstellung abgedeckten Bereichs.
Lösungsansätze:
- In die Bereiche bewegen, die während der ursprünglichen Erfassungsroute abgedeckt wurden, und es dort versuchen.
- Falls die Szenerie dauerhaft und erheblich verändert wurde, muss der Bereich neu erfasst und der Block aktualisiert werden.
Durch den Dienst selbst verursacht
Block gerade hinzugefügt, weiterhin WakingUp
Nach der Konfiguration der Positionsbibliothek oder direkt nach deren Start zeigt der Dienststatus WakingUp oder längere Zeit NotFound an. Dies liegt am Kaltstartmechanismus des Mega-Dienstes. Der erste Ladevorgang erfordert das Aufwecken aus dem Kaltlager. Halten Sie das Netzwerk aufrecht und versuchen Sie es nach 10-30 Sekunden erneut.
Service gibt ausnahme zurück
| HTTPS-Status | Statuscode | Grund |
|---|---|---|
| 200 | 21 | QPS überschreitet Limit |
| 200 | 1040 x | Parameter, Bibliothek oder Kartendaten inkorrekt, siehe spezifische Fehlermeldung |
| 200 | 4000 x | Algorithmusfehler, siehe spezifische Beschreibung |
| 401 | - | Authentifizierung fehlgeschlagen, siehe spezifische Fehlermeldung |
| 404 | - | Pfad in URL inkorrekt eingegeben |
| 50x | - | Serverprogrammfehler |
Lösungsansätze bei Service-Ausnahmen:
- Bei QPS-Limit: Kontaktieren Sie EasyAR-Geschäftskollegen für QPS-Erweiterung
- Bei Authentifizierungsfehler: Beheben gemäß spezifischer Fehlermeldung, häufige Probleme sind zu große Abweichung der Gerätezeit von der Standardzeit, fehlende CLS-Berechtigung für API Key, etc.
- Andere Fälle: Bitte an EasyAR-Mitarbeiter zur Lösung weiterleiten
Problem meldung
Falls das Problem nach den oben genannten Schritten weiterhin besteht, sammeln Sie bitte die folgenden Informationen und leiten Sie sie an das EasyAR Support-Team weiter.
Exportieren von Mega Positioning Service-Informationen
Melden Sie sich in Unity Mega Studio mit Ihrem Konto an, wählen Sie die Positionierungsbibliothek mit Anomalien aus und suchen Sie dann die Export-Schaltfläche Mega Positioning Service, wie im folgenden Bild gezeigt. Das von Ihnen exportierte Dateiformat sollte MegaStudio_ServiceInfo_username_YY-MM-DD_HH-MM-SS.json sein. Der Mega Positioning Service enthält nur Mega Block- und Positionierungsbibliotheksinformationen, keine anderen sensiblen Informationen.

Aufnahme von EIF-Dateien
Bei Problemen mit Tests auf dem Handy, verwenden Sie die Toolbox zur Aufnahme von Handy-EIF-Dateien
Bei Problemen mit Tests auf der AR-Brille, verwenden Sie die Toolbox zur Aufnahme von AR-Brille-EIF-Dateien
Falls Sie Probleme in Ihrer eigenen Anwendung haben, können Sie mit Ihrer App EIF-Dateien aufzeichnen
Bei Nutzung von WeChat Mini-Programmen können Sie Mini-Programm-EIF-Dateien aufzeichnen
Aufzeichnen von problemphänomenen mit geräten wie telephonen oder brillen
Im Bereich AR kann textuelle Beschreibung oft nur schwer präzise Informationen vermitteln, und das Verständnis kann von Person zu Person stark abweichen. Gleichzeitig sind Laufzeit-Bildschirmaufnahmen äußerst wertvolle Informationen, die ein gemeinsames Verständnis zwischen Ihnen und den EasyAR-Mitarbeitern ermöglichen. Sie können die integrierten Funktionen von Geräten wie Telefonen oder Brillen oder Drittanbieter-Software nutzen, um aufzuzeichnen. Es ist wichtig zu beachten, dass die Bildschirmaufnahme in der Regel Auswirkungen auf die Laufzeitleistung hat; sowohl die Tracking-Qualität als auch die allgemeine Leistung können beeinträchtigt werden.
Anmerkung
Vor Beginn der Aufzeichnung wird empfohlen, während der Laufzeit entsprechend der zugehörigen Sample notwendige Debug-Informationen auf dem Bildschirm anzuzeigen. Neben der Bereitstellung der Bildschirmaufnahme sollten Sie auch die während der Aufzeichnung generierten EIF-Daten (Entwickler-Info-Daten) bereitstellen.
Unity-entwicklungsproblem-feedback
Wenn Sie während der Unity-Entwicklung auf ungewöhnliche Probleme stoßen, sollten Sie Schritt für Schritt prüfen, ob die folgenden 4 Punkte erfüllt sind.
- Sie haben die neueste Version des EasyAR Sense Unity Plugin getestet. Neue Versionen enthalten oft Fehlerbehebungen und neue Funktionen. Es wird empfohlen, zunächst auf die neueste Version zu aktualisieren.
- Sie haben die EasyAR-Entwicklungsdokumentation und den Mega-Leitfaden gelesen. Die Dokumentation enthält häufig wichtige Hinweise.
- Sie haben die System- und Unity-Logs überprüft. Es wird empfohlen, bei Fragen vollständige Logs bereitzustellen.
- Sie haben versucht, das Problem in einem leeren Unity-Projekt oder im Sample zu reproduzieren.
Wenn Sie alle 4 Schritte durchgeführt haben und das Problem weiterhin besteht, können Sie im EasyAR Sense Unity Plugin mit folgendem Ablauf vollständige Informationen bereitstellen, damit EasyAR-Techniker Ihr Problem analysieren und lösen können.
Navigieren Sie in Unity zu
EasyAR -> Senseund wählen SieFrage stellen

Geben Sie im Fenster
Frage stellenfolgende Informationen an:- Wählen Sie die Betriebsumgebung, in der das Problem auftritt (nur eine Umgebung wählbar).
- Kopieren Sie die Geräteinformationen: Setzen Sie in der
EasyAR Sessiondie OptionDiagnosticsController.DumpSessionaufLog. Kopieren Sie die Ausgabe eines Frames und fügen Sie sie unten ein.

- Wählen Sie alle verwendeten EasyAR-Funktionen beim Auftreten des Problems aus (Mehrfachauswahl möglich).
- Bestätigen Sie, dass Sie die oben genannten 4 Prüfpunkte erfüllt haben. Beschreiben Sie, wie das Problem im Sample reproduziert werden kann.
- Klicken Sie auf das Kopiersymbol oben rechts.

Hinweis: Beim ersten Öffnen desFrage stellen-Fensters werden unten nicht alle Informationen angezeigt. Diese erscheinen erst nach Auswahl der Umgebung und Funktionen.

Klicken Sie auf
Zur EasyAR-Frageseiteund übermitteln Sie die kopierten Informationen an EasyAR, oder kontaktieren Sie direkt das EasyAR-Supportteam.
