בדף הזה נסביר איך לנפות באגים בתצוגת שעון שנוצרה באמצעות פורמט תצוגת השעון. בנוסף, נסביר איך לאמת את קובץ ה-XML של תצוגת השעון ולזהות שגיאות בסביבת זמן הריצה.
בדיקה של מסמכים תקינים בפורמט Watch Face Format
הפורמט של תצוגת השעון דורש קובץ XML בעל מבנה תקין שתואמת ל-XSD שפורסם, כך שתוכלו לוודא אם תצוגת השעון תקינה או לא, ולזהות שגיאות.
אפשר להשתמש בכלי לאימות XML כדי לזהות בעיות במהלך תהליך ה-build. הכלי הזה משולב בתהליך ה-build במסכי השעון לדוגמה.
אם אתם מפתחים כלי ליצירת תצוגות שעון, חשוב לוודא שהכלי מבצע אימות XML באמצעות XSD.
דוגמה להרצה ידנית של כלי האימות:
java -jar wff-validator.jar 2 ~/MyWatchface/res/raw/watchface.xml
אם יש שגיאה במסמך watchface.xml
, תופיע שגיאה, למשל במקרה הזה height
נכתב בטעות כ-hight
:
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
המאמת מזהה את המיקום של הרכיב שצריך לתקן – שורה 41, עמודה 53.
איך מקבלים את הכלי לאימות XML ובונים אותו לשימוש
זיהוי שגיאות בסביבת זמן הריצה
לא מספיק לוודא שהקובץ ה-XML תקין כדי לזהות את כל הבעיות האפשריות.
לדוגמה, קובץ ה-XML עשוי להפנות לגופן או למשאב גרפי שלא קיים, או שביטוי אמור להניב ערך מספרי אבל במקום זאת הוא מניב מחרוזת.
כדי לקבל מידע מפורט יותר לגבי בעיות מהסוג הזה, מומלץ להשתמש ב-logcat ב-Android Studio או דרך ADB.
מסננים לפי 'זמן ריצה' ותוכלו לראות בעיות קריטיות ולא קריטיות שמשפיעות על תצוגת השעון. לדוגמה, כאן, כשמציינים משאב עבור HourHand
שלא קיים:
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
או במקרה הזה, כשמנסים להשתמש בנושא צבע עם שגיאת הקלדה:
W color has wrong type of source:CONFIGURATION.myTheeeme.2[OBJECT:]
E Cannot parse theme color. Using theme color WHITE