Saat Yüzü Biçimi kurulumu

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.

  1. Dosya > Yeni Proje'yi tıklayın.
  2. 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.
Category

Kadranı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.

AvailableInRetail

Saat yüzünün, cihazın perakende demo modunda kullanılıp kullanılamadığı. Boole değeri veya @bool/watch_face_available_in_retail gibi bir Boole değerine referans olmalıdır.

Varsayılan değer: false

MultipleInstancesAllowed

Kadranın birden fazla favorisi olup olamayacağı. Boole değeri veya @bool/watch_face_multiple_instances_allowed gibi bir Boole değerine referans olmalıdır.

Varsayılan değer: false

Editable

Kadranı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.xml
  • res/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.

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.