Watch Face-Format einrichten

Dieser Leitfaden enthält Schritte zu den Tools, die Sie zum Konfigurieren eines Zifferblatts mit dem Watch Face-Format benötigen, einige Vorschläge zur Projektstruktur und eine Schritt-für-Schritt-Anleitung zur Anwendung der Tools zum Erstellen dieser Struktur.

Voraussetzungen

Führe die folgenden Einrichtungsschritte aus, um deine Entwicklungsumgebung für die Verwendung des Watch Face-Formats vorzubereiten:

  1. Installiere das SDK für Android 13 (API-Level 33) oder höher. Das SDK enthält andere erforderliche Tools, einschließlich aapt2 und android.jar.
  2. Alternativ kannst du Android Studio installieren. Dort findest du diese Tools ebenfalls.

Projektstruktur

Wenn Sie ein benutzerdefiniertes Zifferblatt mit dem Zifferblattformat erstellen, muss das Android App Bundle, das die Datei für das benutzerdefinierte Zifferblatt enthält, vollständig getrennt von dem Android App Bundle sein, das die Logik Ihrer Wear OS-App enthält. In einigen App-Shops, einschließlich Google Play, kannst du kein Android App Bundle hochladen, das sowohl Wear OS-Logik als auch ein benutzerdefiniertes Zifferblatt enthält.

Zifferblatt-Set erstellen

Führe die Schritte in den folgenden Abschnitten aus, um ein Android App Bundle mit einer Zifferblattdatei zu erstellen.

Verwendung des Zifferblattformats erklären

Fügen Sie der Manifestdatei (AndroidManifest.xml) Ihrer neuen App eine App-Property hinzu, die die Verwendung des Watch Face-Formats angibt:

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest ...>
    <application ...>
        <property
            android:name="com.google.wear.watchface.format.version"
            android:value="1" />
    </application>
</manifest>

Zifferblatt-Metadaten deklarieren

Erstellen Sie im Ressourcenverzeichnis res/xml Ihrer Anwendung eine neue Datei mit dem Namen watch_face_info.xml. Hier definieren Sie die Metadaten Ihres Zifferblatts:

<?xml version="1.0" encoding="utf-8"?>
<WatchFaceInfo>
    <!-- Only "Preview" is required. -->
    <Preview value="@drawable/watch_face_preview" />
    <Category value="CATEGORY_EMPTY" />
    <AvailableInRetail value="true" />
    <MultipleInstancesAllowed value="true" />
    <Editable value="true" />
</WatchFaceInfo>

Die Felder in dieser Datei enthalten die folgenden Informationen:

Preview
Verweist auf das Drawable, das ein Vorschaubild des Zifferblatts enthält
Category

Legt die Kategorie des Zifferblatts fest. Muss ein String oder ein Verweis auf einen String sein, z. B. @string/ref_name. Jeder Gerätehersteller kann seine eigenen Zifferblattkategorien definieren.

Standardwert: empty_category_meta. Damit wird dieses Zifferblatt mit anderen „leeren Kategorie“-Ziffern am unteren Rand der Zifferblattauswahl gruppiert.

AvailableInRetail

Gibt an, ob das Zifferblatt im Demomodus für den Einzelhandel auf dem Gerät verfügbar ist. Muss ein boolescher Wert oder ein Verweis auf einen booleschen Wert wie @bool/watch_face_available_in_retail sein.

Standardwert: false

MultipleInstancesAllowed

Legt fest, ob das Zifferblatt mehrere Favoriten haben kann. Muss ein boolescher Wert oder ein Verweis auf einen booleschen Wert wie @bool/watch_face_multiple_instances_allowed sein.

Standardwert: false

Editable

Gibt an, ob das Zifferblatt bearbeitbar ist, d. h., dass es eine Einstellung oder mindestens eine nicht korrigierte Zusatzfunktion hat. Damit wird die Schaltfläche Bearbeiten für das Zifferblatt in der Favoritenliste ein- oder ausgeblendet.

Standardwert: false

Zifferblattname angeben

Lege in der Manifestdatei deiner App (AndroidManifest.xml) das Attribut android:label auf den Namen deines Zifferblatts fest:

<application android:label="@string/watch_face_name" >

Unterstützung für Zifferblattformen deklarieren (optional)

Dieser Schritt ist nur erforderlich, wenn du ein unterschiedliches Verhalten für Zifferblätter verschiedener Größen unterstützen möchtest. Sie können diesen Schritt überspringen, wenn Sie mit der Anzeige Ihres Zifferblatts an die Größe der Uhr skalieren möchten.

Geben Sie im Ressourcenverzeichnis res/xml Ihrer App die Zifferblattformen an, die Sie in watch_face_shapes.xml unterstützen:

<WatchFaces>
    <!-- The default shape is "CIRCLE". -->
    <WatchFace shape="CIRCLE" width="300" height="300"
               file="@raw/watchface"/>
    <WatchFace shape="CIRCLE" width="450" height="450"
               file="@raw/watchface_large_circle"/>
    <WatchFace shape="RECTANGLE" width="380" height="400"
               file="@raw/watchface_rectangle"/>
</WatchFaces>

Zifferblattdetails deklarieren

Erstellen Sie im Ressourcenverzeichnis res/raw Ihrer App Dateien, die den Attributwerten file entsprechen, die beim Erklären der Unterstützung für Zifferblattformen verwendet werden.

Hier definieren Sie die Darstellung und das Verhalten des Zifferblatts für jede Form des Zifferblatts. Wenn Sie keine Formdatei definiert haben, müssen Sie nur eine Datei (watchface.xml) erstellen.

Im Beispiel auf dieser Seite würden die XML-Rohdateien wie folgt aussehen:

  • res/raw/watchface.xml
  • res/raw/watchface_large_circle.xml
  • res/raw/watchface_rectangle.xml

Das Stammelement ist immer WatchFace:

<WatchFace width="450" height="450" shape="CIRCLE">
    <!-- Remainder of your Watch Face Format definition here. -->
    <!-- If this file defines a watch face for a circular device shape, place
         resources used in this file in the "/res/drawable-nodpi" directory. -->
    <!-- If this file defines a watch face for a rectangular or other
         non-circular shape, place resources ued in this file in the
         "/res/drawable-notround-nodpi" directory. -->
</WatchFace>

Zifferblatt-Publisher identifizieren (optional)

Du kannst in der Manifestdatei deiner App optional einen beliebigen String angeben, mit dem du den Publisher des Zifferblatts oder den Namen und die Version des Tools, das du verwendest, identifizieren kannst:

<application ...>
    ...
    <property
        android:name="com.google.wear.watchface.format.publisher"
        android:value="{toolName}-{toolVersion}" />
</application>

Richtigkeit und Leistung des Zifferblatts prüfen

Prüfen Sie während der Entwicklung und vor dem Hochladen bei Google Play mit den Validator-Tools, ob Ihr Zifferblatt frei von Fehlern ist und den Empfehlungen zur Arbeitsspeichernutzung entspricht.

App-Bundle für Zifferblatt erstellen

Verwenden Sie das Gradle-Build-System, um das Android App Bundle zu erstellen, das Ihr Zifferblatt enthält. Weitere Informationen zum Erstellen einer App mit Gradle

Dies wird in den GitHub-Beispielen veranschaulicht.