Watch Face-Format einrichten

Diese Anleitung enthält eine Anleitung zu den Tools, die Sie zum Konfigurieren eines Zifferblatts benötigen das Watch Face-Format, einige Vorschläge zur Projektstruktur und Schritt-für-Schritt-Anleitung zum Anwenden der Tools, um diese Struktur zu schaffen.

Voraussetzungen

So bereiten Sie Ihre Entwicklungsumgebung auf die Verwendung des Watch Face-Formats vor: führen Sie die folgenden Einrichtungsschritte aus:

  1. Installieren Sie das SDK für Android 14 (API-Level 34) oder höher. Wenn Ihr Zifferblatt nicht von den Funktionen oder der Funktionsweise der Version 2 abhängt, können Sie Installieren Sie stattdessen das SDK für Android 13 (API-Level 33).

    Das SDK enthält weitere erforderliche Tools, einschließlich aapt2 und android.jar.

  2. Alternativ kannst du Android Studio installieren, über das auch diese Werkzeuge.

Projektstruktur

Wenn Sie ein benutzerdefiniertes Zifferblatt mit dem Watch Face-Format erstellen, App Bundle, das die Datei mit dem benutzerdefinierten Zifferblatt enthält, muss vollständig getrennt sein aus dem Android App Bundle, das die Logik deiner Wear OS-App enthält. Eine App wie Google Play, verhindern, dass Sie ein Android App Bundle hochladen die sowohl die Wear OS-Logik als auch ein benutzerdefiniertes Zifferblatt enthält.

Zifferblattset erstellen

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

Die Verwendung des Watch Face-Formats erklären

Fügen Sie in der Manifestdatei (AndroidManifest.xml) Ihrer neuen App eine App hinzu an, die Ihre Verwendung des Watch Face-Formats angibt. Es sei denn, Sie möchten den Zugriff auf das Zifferblatt für Geräte mit Wear OS 5 oder höher einschränken, 2 verschiedene Zifferblatt-APKs erstellen, eine für Version 2 und eine für unterstützt Version 1. Weitere Informationen zur Konfiguration von Versionen Ihrer App

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest ...>
    <!--
        Use SDK version 34 for version 2 of WFF, and SDK version 33 for version
        1 of WFF
    -->
    <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"
        ...>
        <property
            android:name="com.google.wear.watchface.format.version"
            android:value="2" />
    </application>
</manifest>

Zifferblatt-Metadaten angeben

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 stellen die folgenden Details dar:

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

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

Standardwert: empty_category_meta, mit dem dieses Zifferblatt gruppiert wird mit anderer „leerer Kategorie“ Zifferblätter unten in der Zifferblattauswahl Ansicht.

AvailableInRetail

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

Standardwert: false

MultipleInstancesAllowed

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

Standardwert: false

Editable

Gibt an, ob das Zifferblatt bearbeitbar ist, was bedeutet, dass das Zifferblatt Einstellung oder mindestens eine nicht fixierte Zusatzfunktion. Dies wird verwendet, um die Schaltfläche Bearbeiten für das Zifferblatt in der Favoritenliste auszublenden.

Standardwert: false

Zifferblattname angeben

Lege in der Manifestdatei (AndroidManifest.xml) deiner App die android:label fest. -Attribut zum Namen Ihres Zifferblatts hinzu:

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

Unterstützung für Zifferblattformen deklarieren (optional)

Dieser Schritt ist nur erforderlich, wenn Sie ein anderes Verhalten für verschiedene Größen von Zifferblättern. Sie können diesen Schritt überspringen, dass sich das Zifferblatt an die Größe der Uhr anpasst.

Deklariere im Ressourcenverzeichnis res/xml deiner App das Zifferblatt Formen, 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 angeben

Erstellen Sie im Ressourcenverzeichnis res/raw Ihrer Anwendung Dateien entsprechend dem file-Attributwerte, die verwendet werden, wenn du deklarierst, dass das Zifferblatt unterstützt wird Formen

Hier definieren Sie das Erscheinungsbild und das Verhalten Ihres Zifferblatts für jede Zifferblattform zu sehen. Wenn Sie keine Formdatei definiert haben, um eine Datei zu erstellen: watchface.xml.

Im Beispiel auf dieser Seite wären die XML-Rohdateien wie folgt:

  • 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)

Optional können Sie in der Manifestdatei Ihrer App eine beliebige Zeichenfolge deklarieren, die den Publisher des Zifferblatts, den Toolnamen und Version, die Sie verwenden:

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

Richtigkeit und Leistung des Zifferblatts prüfen

Verwenden Sie während der Entwicklung und vor dem Hochladen bei Google Play den Validator Tools, um zu prüfen, ob das Zifferblatt frei von Fehlern entspricht den Empfehlungen zur Arbeitsspeichernutzung.

App-Bundle für Zifferblätter erstellen

Erstelle das Android App Bundle, das dein Zifferblatt enthält, mithilfe der Gradle-Build-System Weitere Informationen zum Erstellen einer App mit Gradle

Dies wird in den GitHub-Beispielen veranschaulicht.