W tym przewodniku znajdziesz wskazówki dotyczące narzędzi potrzebnych do skonfigurowania tarczy zegarka za pomocą formatu tarczy zegarka, kilka sugestii dotyczących struktury projektu oraz szczegółowy przewodnik, jak zastosować narzędzia do utworzenia tej struktury.
Wymagania wstępne
Aby przygotować środowisko programistyczne do korzystania z formatu tarczy zegarka, wykonaj te czynności konfiguracyjne:
- Zainstaluj pakiet SDK na Androida 13 (poziom interfejsu API 33) lub nowszego. Pakiet SDK zawiera inne wymagane narzędzia, np.
aapt2
iandroid.jar
. - Zainstaluj program wiersza poleceń
bundletool
. - Podpisz wersję aplikacji do debugowania, która zawiera projekt tarczy zegarka. Podpisany pakiet Android App Bundle możesz wygenerować w Android Studio lub podpisać kompilację do debugowania ręcznie.
Struktura projektu
Gdy tworzysz własną tarczę zegarka, która używa formatu tarczy zegarka, pakiet Android App Bundle zawierający plik tej tarczy musi być całkowicie niezależny od pakietu Android App Bundle zawierającego logikę aplikacji na Wear OS. Niektóre sklepy z aplikacjami, w tym Google Play, uniemożliwiają przesłanie pakietu Android App Bundle zawierającego zarówno logikę Wear OS, jak i niestandardową tarczę zegarka.
Utwórz pakiet tarcz zegarka
Aby utworzyć pakiet Android App Bundle zawierający plik tarczy zegarka, wykonaj czynności opisane w sekcjach poniżej.
Deklarowanie użycia formatu tarczy zegarka
W pliku manifestu nowej aplikacji (AndroidManifest.xml
) dodaj właściwość aplikacji, która wskazuje korzystanie z formatu tarczy zegarka:
<?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>
Deklarowanie metadanych tarczy zegarka
W katalogu zasobów res/xml
aplikacji utwórz nowy plik o nazwie watch_face_info.xml
. Tutaj definiuje się metadane tarczy zegarka:
<?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>
Pola w tym pliku określają następujące szczegóły:
Preview
- Odnosi się do elementu, który można rysować, który zawiera obraz podglądu tarczy zegarka.
Category
Określa kategorię tarczy zegarka. Musi to być ciąg lub odwołanie do ciągu znaków, np.
@string/ref_name
. Każdy producent urządzenia może zdefiniować własny zestaw kategorii tarcz zegarka.Wartość domyślna:
empty_category_meta
, która grupuje tarczę zegarka z innymi tarczami z „pustą kategorią” u dołu widoku selektora tarcz.AvailableInRetail
Określa, czy tarcza zegarka jest dostępna w trybie demonstracyjnym dla sprzedawców. Musi być wartością logiczną lub odniesieniem do wartości logicznej, np.
@bool/watch_face_available_in_retail
.Wartość domyślna:
false
MultipleInstancesAllowed
Określa, czy tarcza zegarka może mieć wiele ulubionych. Musi być wartością logiczną lub odniesieniem do wartości logicznej, np.
@bool/watch_face_multiple_instances_allowed
.Wartość domyślna:
false
Editable
Określa, czy można edytować tarczę, co oznacza, że ma ustawienie lub co najmniej 1 nienaprawiony widżet. Pozwala wyświetlać lub ukrywać przycisk Edytuj tarczy zegarka na liście ulubionych.
Wartość domyślna: false
Zadeklaruj nazwę tarczy zegarka
W pliku manifestu aplikacji (AndroidManifest.xml
) ustaw atrybut android:label
na nazwę tarczy zegarka:
<application android:label="@string/watch_face_name" >
Deklarowanie obsługi kształtów tarcz zegarka
W katalogu zasobów res/xml
aplikacji zadeklaruj zestaw kształtów tarczy zegarka, które obsługujesz:
<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>
Deklarowanie szczegółów tarczy zegarka
W katalogu zasobów res/raw
aplikacji utwórz pliki odpowiadające wartościom atrybutu file
używanym podczas deklarowania obsługi kształtów tarcz zegarka. Tutaj ustawiasz wygląd i działanie tarczy w przypadku każdego jej kształtu.
W przypadku przykładu z tej strony nieprzetworzone pliki XML wyglądałyby tak:
res/raw/watchface.xml
res/raw/watchface_large_circle.xml
res/raw/watchface_rectangle.xml
Elementem głównym jest zawsze 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>
Identyfikuj wydawcę tarczy zegarka (opcjonalnie)
Opcjonalnie w pliku manifestu aplikacji zadeklaruj dowolny ciąg znaków, który może służyć do identyfikowania wydawcy tarczy zegarka, albo nazwę i wersję narzędzia:
<application ...> ... <property android:name="com.google.wear.watchface.format.publisher" android:value="{toolName}-{toolVersion}" /> </application>
Tworzenie pakietu aplikacji na tarczę zegarka
Aby utworzyć pakiet Android App Bundle zawierający tarczę zegarka, użyj bundletool
. Dowiedz się więcej o tym, jak utworzyć aplikację za pomocą bundletool
.
Zapoznaj się z przykładami na GitHubie, z którymi dowiesz się, jak przygotować pakiet aplikacji do publikacji, a także z narzędzi do weryfikacji, które pozwolą Ci sprawdzić jego poprawność przed przesłaniem do Google Play.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy JavaScript jest wyłączony
- Pojawiaj się w ostatnich i w CV.
- Dodawanie ekranu powitalnego
- Korzystanie z kafelków