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. Installieren Sie das bundletool-Befehlszeilentool.
  3. Signiere die Debug-Version der App, die das Design deines Zifferblatts enthält. Sie können ein signiertes Android App Bundle in Android Studio generieren oder Ihren Debug-Build manuell signieren.

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

Deklarieren Sie im Ressourcenverzeichnis res/xml Ihrer App die verschiedenen Zifferblattformen, die Sie 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.

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>

App-Bundle für Zifferblatt erstellen

Verwenden Sie bundletool, um das Android App Bundle zu erstellen, das Ihr Zifferblatt enthält. Weitere Informationen zum Erstellen einer Anwendung mit bundletool

In den GitHub-Beispielen erfährst du, wie du dein App Bundle für die Veröffentlichung vorbereitest, sowie mit den Validator-Tools, mit denen du die Richtigkeit vor dem Einreichen bei Google Play prüfen kannst.