Auf dieser Seite wird beschrieben, wie Sie ein Zifferblatt beheben, das mit dem Watch Face-Format erstellt wurde. Außerdem wird erklärt, wie Sie die XML-Datei Ihres Zifferblatts validieren und Laufzeitfehler erkennen.
Gültige Dokumente im Watch Face-Format prüfen
Da für das Zifferblattformat gut strukturierte XML-Dateien erforderlich sind, die einem veröffentlichten XSD entsprechen, können Sie prüfen, ob Ihr Zifferblatt gültig ist, und Fehler erkennen.
Mit dem XML-Validierungstool können Sie Probleme während des Build-Prozesses erkennen. Dieses Tool ist in den Build-Prozess der Beispielzifferblätter eingebunden.
Wenn Sie ein Tool zum Erstellen von Zifferblättern entwickeln, muss es die XML-Dateien anhand der XSD-Datei validieren.
Beispiel für die manuelle Ausführung des Validierungstools:
java -jar wff-validator.jar 2 ~/MyWatchface/res/raw/watchface.xml
Wenn in Ihrem watchface.xml
-Dokument ein Fehler vorliegt, wird dieser angezeigt. In diesem Fall wurde height
als hight
falsch geschrieben:
INFO: DWF Validation Application Version 1.0. Maximum Supported Format Version #2
SEVERE: [Line 41:Column 53]: cvc-complex-type.3.2.2: Attribute 'hight' is not allowed to appear in element 'PartDraw'.
INFO: ❌ FAILED : watchface.xml is NOT valid against watch face format version #1
Der Validator gibt den Speicherort des Elements an, das korrigiert werden muss: Zeile 41, Spalte 53.
Informationen zum Herunterladen und Erstellen des XML-Validator-Tools
Laufzeitfehler ermitteln
Es reicht nicht aus, nur die Gültigkeit der XML-Datei zu prüfen, um alle potenziellen Probleme zu erkennen.
Beispielsweise verweist Ihre XML-Datei möglicherweise auf eine Schriftart oder eine Zeichnen-Ressource, die nicht vorhanden ist, oder ein Ausdruck sollte einen numerischen Wert liefern, führt aber stattdessen zu einem String.
Bei diesen Arten von Problemen ist es eine gute Möglichkeit, detailliertere Informationen zu erhalten, wenn Sie Logcat entweder in Android Studio oder über ADB verwenden.
Wenn Sie nach „Laufzeit“ filtern, sehen Sie sowohl schwerwiegende als auch nicht schwerwiegende Probleme, die sich auf das Zifferblatt auswirken. Hier wird beispielsweise eine Ressource für HourHand
angegeben, die nicht existiert:
E Invalid resource ID 0x00000000.
E FATAL EXCEPTION: main
Process: com.google.wear.watchface.runtime, PID: 29115 android.content.res.Resources$NotFoundException: Resource ID #0x0
Oder hier, wenn Sie versuchen, ein Farbschema mit einem Tippfehler zu verwenden:
W color has wrong type of source:CONFIGURATION.myTheeeme.2[OBJECT:]
E Cannot parse theme color. Using theme color WHITE