Bu sayfada, Saat Kadranı Formatı ile oluşturulmuş bir kadranda nasıl hata ayıklama yapılacağı açıklanmaktadır. Ayrıca, kadran XML'inizi nasıl doğrulayacağınız ve çalışma zamanındaki hataları nasıl tespit edeceğiniz de açıklanmaktadır.
Geçerli Saat Kadranı Formatı belgeleri olup olmadığını kontrol etme
Kadran biçimi, yayınlanmış bir XSD'ye uygun, iyi yapılandırılmış XML gerektirdiğinden kadranınızın geçerli olup olmadığını onaylayabilir ve hataları tespit edebilirsiniz.
Derleme işlemi sırasındaki sorunları tespit etmek için XML doğrulama aracını kullanın. Bu araç, örnek kadranlarda derleme sürecine entegre edilmiştir.
Kadran oluşturmak için bir araç geliştiriyorsanız aracınızın XSD'yi kullanarak XML doğrulaması yaptığından emin olun.
Doğrulama aracını manuel olarak çalıştırma örneği:
java -jar wff-validator.jar 2 ~/MyWatchface/res/raw/watchface.xml
watchface.xml
belgenizde hata varsa bir hata görürsünüz. Örneğin, height
'nin hight
olarak yanlış yazıldığı bu durumda:
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
Doğrulayıcı, düzeltilmesi gereken öğenin konumunu (41. satır, 53. sütun) tanımlar.
XML doğrulayıcı aracını nasıl edineceğinizi ve kullanıma hazır hale nasıl getireceğinizi öğrenin.
Çalışma zamanı hatalarını belirleme
XML'in geçerli olduğundan emin olmak, olası tüm sorunları tespit etmek için yeterli değildir.
Örneğin, XML'iniz var olmayan bir yazı tipini veya çizilebilir kaynağı referans alabilir ya da bir ifadenin sayısal bir değer üretmesi beklenirken bunun yerine bir dize oluşabilir.
Bu tür sorunlar için Android Studio'da veya ADB üzerinden logcat'i kullanmak daha ayrıntılı bilgi edinmenin iyi bir yoludur.
"Çalışma zamanı"na göre filtreleme yaptığınızda kadranı etkileyen hem önemli hem de önemsiz sorunları görebilirsiniz. Örneğin, burada HourHand
için var olmayan bir kaynak belirtilirken:
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
Yazım hatası içeren bir renk teması kullanırken de bu hatayla karşılaşabilirsiniz:
W color has wrong type of source:CONFIGURATION.myTheeeme.2[OBJECT:]
E Cannot parse theme color. Using theme color WHITE