Not: Bu sayfada, saat kadranı yapılandırmanızı manuel olarak yönetme sürecinin bir adımı gösterilmektedir. Kadranınızı WYSIWYG (Ne Görüyorsanız Onu Alırsınız) tarzı bir araç kullanarak tasarlamak istiyorsanız önce Watch Face Studio kılavuzlarına göz atın.
Bu kılavuzda, Saat Kadranı Formatı'nı kullanarak saat kadranı yapılandırmak için gereken araçlarla ilgili adımlar, proje yapısıyla ilgili bazı öneriler ve bu yapıyı oluşturmak için araçları uygulama konusunda adım adım talimatlar yer almaktadır.
Android Studio'yu kullanmaya başlama
Kadranları manuel olarak geliştirmeye başlamanın en kolay yolu Android Studio'yu kullanmaktır. Kadran desteği, Canary kanalında kullanılabilir.
- Dosya > Yeni Proje'yi tıklayın.
- Wear OS bölümünde Temel kadran'ı seçin.
Bu, tam işlevli bir saat yüzü için gerekli yapıyı oluşturur.
Proje yapısı
Saat Kadranı Formatı'nı kullanan özel bir saat kadranı oluşturduğunuzda, özel saat kadranı dosyasını içeren Android App Bundle, Wear OS uygulamanızın mantığını içeren Android App Bundle'dan tamamen ayrı olmalıdır. Google Play de dahil olmak üzere bazı uygulama mağazaları, Wear OS mantığı ve özel bir saat yüzü içeren Android App Bundle'ı yüklemenizi engeller.
Saat Kadranı Formatı sürümünü beyan etme
Yeni uygulamanızın manifest dosyasında (AndroidManifest.xml), Saat Kadranı Formatı'nı kullandığınızı belirten uygulama özelliğini inceleyin.
Watch Face Format'ın bazı özellikleri yalnızca sonraki sürümlerde kullanılabilir. Cihaz uyumluluğunu en üst düzeye çıkarmak için bu özelliği, ihtiyacınız olan özellikleri destekleyen en düşük değere ayarlayın ve minSdkVersion özelliğini de eşleşecek şekilde ayarlayın. Uygulamanızın sürümlerini yapılandırma hakkında daha fazla bilgi edinin.
<manifest ...>
<!--
Use SDK version 33 to support Watch Face Format (WFF) version 1 and
higher, SDK version 34 to support WFF version 2 and higher, and so on.
-->
<uses-sdk
android:minSdkVersion="34"
android:targetSdkVersion="34" />
<!--
WFF is a resource-only format, so the hasCode attribute should be set to
false to reflect this.
-->
<application
android:label="@string/watch_face_name"
android:hasCode="false"
...>
<meta-data android:name="com.google.android.wearable.standalone"
android:value="true" />
<property
android:name="com.google.wear.watchface.format.version"
android:value="2" />
</application>
</manifest>
Kadran meta verilerini bildirme
Uygulamanızın res/xml kaynak dizininde watch_face_info.xml adlı bir dosya var. Kadranınızın meta verilerini burada tanımlarsınız:
<?xml version="1.0" encoding="utf-8"?>
<WatchFaceInfo>
<Preview value="@drawable/watch_face_preview" />
<Category value="CATEGORY_EMPTY" />
<AvailableInRetail value="true" />
<MultipleInstancesAllowed value="true" />
<Editable value="true" />
</WatchFaceInfo>
Bu dosyadaki alanlar aşağıdaki ayrıntıları gösterir:
Preview- Kadranın önizleme resmini içeren çizilebilir öğeye referans verir.
CategoryKadranın kategorisini tanımlar. Dize veya dizeye referans olmalıdır (ör.
@string/ref_name). Her cihaz üreticisi kendi kadran kategorilerini tanımlayabilir.Varsayılan değer:
empty_category_meta. Bu değer, kadranı kadran seçici görünümünün en altındaki diğer "boş kategori" kadranlarla birlikte gruplandırır.AvailableInRetailSaat yüzünün, cihazın perakende demo modunda kullanılıp kullanılamadığı. Boole değeri veya
@bool/watch_face_available_in_retailgibi bir Boole değerine referans olmalıdır.Varsayılan değer:
falseMultipleInstancesAllowedKadranın birden fazla favorisi olup olamayacağı. Boole değeri veya
@bool/watch_face_multiple_instances_allowedgibi bir Boole değerine referans olmalıdır.Varsayılan değer:
falseEditableKadranın düzenlenebilir olup olmadığı. Düzenlenebilir kadranlar, bir ayara veya en az bir sabit olmayan komplikasyona sahiptir. Bu seçenek, favoriler listesindeki saat yüzü için Düzenle düğmesini göstermek veya gizlemek için kullanılır.
Varsayılan değer: false
Kadran adını belirtme
Uygulamanızın manifest dosyasında (AndroidManifest.xml), android:label özelliğini kadranınızın adıyla değiştirin:
<application android:label="@string/watch_face_name" >
Kadran ayrıntılarını belirtme
Temel bir WFF saat yüzü belgesinin yapısı aşağıdaki gibidir:
<WatchFace width="450" height="450">
<Scene>
<!-- Content to be rendered -->
</Scene>
</WatchFace>
Android Studio şablonu, res/raw/watchface.xml içinde temel bir doküman sağlar. Farklı ekran şekillerini ve boyutlarını desteklemek için birden fazla şekil ve boyut için destek beyan edin.
Kök öğe her zaman WatchFace olur. height ve width, kadranınızda kullanılacak koordinat alanının kapsamını tanımlar. Kadran, kullanıldığı cihaza uyacak şekilde ölçeklendirilir. height ve width, gerçek pikselleri temsil etmez.
Saat Kadranı Formatı, kadranınızla ilgili çeşitli ayrıntıları düzenler:
- Saat yüzünüzün önizleme resminde gösterilen saat ve adım sayısı gibi meta veriler.
- Kadranınız için farklı renk temaları, kullanıcı tarafından etkinleştirilebilen öğeler ve çeşitli öğeler arasından seçim yapma gibi kullanıcı yapılandırmaları. Saat Kadranı Formatı sürüm 2, kullanıcı yapılandırmasında görünebilen çeşitleri sunar. Her bir tema, saat yüzünüzde zamanla birlikte görünen öğelerin türünü ve stilini belirten önceden ayarlanmış bir kullanıcı yapılandırması belirtir. Bu hazır ayarlar, görsel olarak hoş görünecek öğe grupları oluşturmanızı kolaylaştırır. Kullanıcılar, Wear OS tamamlayıcı uygulamasında kaydırılabilir bir satırda kadranınızın farklı versiyonlarını görür.
- Kadranın görsel öğelerini içeren bir sahne. Sahnenin sonuna daha yakın görünen öğeler diğer öğelerin üzerinde görünür. Bu nedenle, öğelerin tipik sıralaması şu şekildedir:
- Analog saat için kollar veya dijital saat için metin
- Haftanın günü veya kullanıcının adım sayısı gibi ek bilgileri gösteren komplikasyonlar
- Saat yüzüne görsel ilgi veya dekorasyon sağlayan diğer grafikler (ör. kamp alanı resmi)
- Aynı anda birden fazla öğeyi değiştirmenize olanak tanıyan öğe grupları. Bir sahne içinde bu grupların varyantlarını oluşturabilirsiniz. Bu sayede, sistem güç tasarrufu sağlayan bir ortam moduna girdiğinde içeriği seçerek gizleyebilir veya değiştirebilirsiniz.
Özellikler kesin olarak yazılır ve saat yüzü oluştururken çoğu hata kaynağını önlemek için sıklık ve geçerli değerlerle ilgili yönergeler içerir.
Kadran şekilleri için destek beyan etme (isteğe bağlı)
Bu adım yalnızca saat yüzlerinin farklı boyutları için farklı davranışları desteklemek istiyorsanız gereklidir. Saat kadranınızın saatin boyutuyla ölçeklenmesini istiyorsanız bu adımı atlayabilirsiniz.
Uygulamanızın res/xml kaynak dizininde, watch_face_shapes.xml içinde desteklediğiniz kadran şekilleri grubunu bildirin:
<WatchFaces>
<WatchFace shape="CIRCLE" width="300" height="300"
file="@raw/watchface"/>
<WatchFace shape="CIRCLE" width="450" height="450"
file="@raw/watchface_large_circle"/>
<WatchFaces>
Ardından, her saat yüzü şekli için saat yüzünüzün görünümünü ve davranışını tanımlayın.
Şekil dosyası tanımlamadıysanız yalnızca bir dosya gerekir: watchface.xml.
Bu bölümdeki örnekten yararlanarak, ham XML dosyaları şu şekilde olur:
res/raw/watchface.xmlres/raw/watchface_large_circle.xml
Saat yüzü yayıncısını belirleme (isteğe bağlı)
İsteğe bağlı olarak, uygulamanızın manifest dosyasında, saat kadranının yayıncısını veya kullandığınız aracın adını ve sürümünü tanımlamak için kullanabileceğiniz rastgele bir dize bildirin:
<application ...>
...
<property
android:name="com.google.wear.watchface.format.publisher"
android:value="<var>{toolName}-{toolVersion}</var>" />
</application>
Kadranınızın doğruluğunu ve performansını kontrol etme
Geliştirme sırasında ve Google Play'e yüklemeden önce Android Studio'daki yerleşik Watch Face Format doğrulamasını kullanarak kadranınızda söz dizimi hatası olmadığını kontrol edin. Bu özellik, kodunuzdaki hataları otomatik olarak vurgular ve sürümden bağımsızdır.
Ayrıca, bellek ayak izi aracını çalıştırarak kadranınızın bellek kullanımı şartlarını karşıladığını da kontrol etmeniz gerekir.
- Yayınlamaya hazırlanırken bellek kullanımını optimize etme ve bellek kullanımını kontrol etme hakkında daha fazla bilgi edinin.
- Geliştirme döngünüzün bir parçası olarak XML doğrulayıcıyı kullanma hakkında daha fazla bilgi edinin.
Kadran uygulama paketinizi oluşturma
Kadranınızı oluşturup dağıtmanın en kolay yolu, kadran çalıştırma yapılandırmaları için yerleşik desteğe sahip olan Android Studio'yu kullanmaktır. Çalıştır düğmesini tıkladıktan sonra Android Studio, saat yüzünü cihaza veya emülatöre dağıtır ve etkin saat yüzü olarak ayarlar.
Örnek kadranlar
Saat Yüzü Biçimi projelerinin diğer örneklerini GitHub'da bulabilirsiniz.
Sizin için önerilenler
- Not: JavaScript kapalıyken bağlantı metni gösterilir.
- AAPT2
- Jetpack Compose ile ilgili temel bilgiler
- CameraX'i kullanmaya başlama