對錶面進行偵錯

本頁說明如何偵錯使用錶面格式建構的錶面。並說明如何驗證錶面 XML 和識別執行階段錯誤。

檢查是否有有效的錶面格式文件

錶面格式需要符合已發布 XSD 的結構完整 XML,因此您可以確認錶面是否有效,並找出錯誤。

使用 XML 驗證工具,找出建構過程中的問題。這個工具已整合至範例錶面的建構程序。

如果您要建構用於建立錶面的工具,請務必確保該工具會在工具中使用 XSD 執行 XML 驗證。

手動執行驗證工具的範例:

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