Uwaga: na tej stronie znajdziesz jeden z etapów procesu ręcznego zarządzania konfiguracją tarczy zegarka. Jeśli chcesz zaprojektować tarczę zegarka za pomocą narzędzia WYSIWYG (what you see is what you get), najpierw zapoznaj się z przewodnikami po Watch Face Studio.
Ten przewodnik zawiera informacje o narzędziach potrzebnych do skonfigurowania tarczy zegarka za pomocą Formatu tarczy zegarka, sugestie dotyczące struktury projektu oraz szczegółowe instrukcje stosowania narzędzi do tworzenia tej struktury.
Pierwsze kroki z Androidem Studio
Najłatwiejszym sposobem na rozpoczęcie ręcznego tworzenia tarcz zegarka jest użycie Android Studio. Obsługa tarcz zegarka jest dostępna na kanale Canary.
- Kliknij Plik > Nowy projekt.
- W sekcji Wear OS wybierz Podstawowa tarcza zegarka.
W ten sposób powstaje niezbędna struktura w pełni funkcjonalnej tarczy zegarka.
Struktura projektu
Gdy tworzysz niestandardową tarczę zegarka korzystającą z Formatu tarczy zegarka, pakiet Android App Bundle zawierający plik niestandardowej tarczy zegarka musi być całkowicie oddzielony od pakietu Android App Bundle zawierającego logikę aplikacji na Wear OS. Niektóre sklepy z aplikacjami, w tym Google Play, uniemożliwiają przesyłanie pakietu Android App Bundle, który zawiera zarówno logikę Wear OS, jak i niestandardową tarczę zegarka.
Deklarowanie wersji formatu tarczy zegarka
W pliku manifestu nowej aplikacji (AndroidManifest.xml) sprawdź właściwość application, która wskazuje, że używasz Formatu tarczy zegarka.
<property android:name="com.google.wear.watchface.format.version" android:value="4" />
Niektóre funkcje formatu tarczy zegarka są dostępne tylko w nowszych wersjach. Ustaw tę właściwość na najniższą wartość, która obsługuje potrzebne Ci funkcje, aby zmaksymalizować zgodność urządzenia, a także ustaw odpowiednio wartość minSdkVersion. Dowiedz się więcej o konfigurowaniu wersji aplikacji.
Element <application> musi też zawierać atrybut android:hasCode="false". Pakiety Format tarczy zegarka zawierają tylko zasoby i nie mogą zawierać kodu.
Deklarowanie metadanych tarczy zegarka
W katalogu zasobów res/xml aplikacji znajduje się plik o nazwie watch_face_info.xml. W tym miejscu możesz zdefiniować metadane tarczy zegarka:
<WatchFaceInfo> <Preview value="@drawable/preview" /> <Category value="CATEGORY_EMPTY" /> <AvailableInRetail value="true" /> <MultipleInstancesAllowed value="true" /> <Editable value="true" /> <FlavorsSupported value="true" /> </WatchFaceInfo>
Pola w tym pliku zawierają te informacje:
Preview- Odwołuje się do elementu rysowalnego, który zawiera obraz podglądu tarczy zegarka.
CategoryOkreśla kategorię tarczy zegarka. Musi to być ciąg znaków lub odwołanie do ciągu znaków, np.
@string/ref_name. Każdy producent urządzeń może zdefiniować własny zestaw kategorii tarcz zegarka.Wartość domyślna:
empty_category_meta, która grupuje tę tarczę zegarka z innymi tarczami z „pustej kategorii” u dołu widoku selektora tarcz zegarka.AvailableInRetailCzy tarcza zegarka jest dostępna w trybie demo dla sklepów na urządzeniu. Musi to być wartość logiczna lub odwołanie do wartości logicznej, np.
@bool/watch_face_available_in_retail.Wartość domyślna:
falseMultipleInstancesAllowedOkreśla, czy tarcza zegarka może mieć wiele ulubionych. Musi to być wartość logiczna lub odwołanie do wartości logicznej, np.
@bool/watch_face_multiple_instances_allowed.Wartość domyślna:
falseEditableczy tarcza zegarka jest edytowalna, co oznacza, że ma ustawienie lub co najmniej 1 niezmienny widżet; Służy do wyświetlania lub ukrywania przycisku Edytuj na liście ulubionych tarcz zegarka.
Wartość domyślna: false
Deklarowanie nazwy tarczy zegarka
W pliku manifestu aplikacji (AndroidManifest.xml) ustaw atrybut android:label w elemencie application na nazwę tarczy zegarka.
Deklarowanie szczegółów tarczy zegarka
Struktura podstawowego dokumentu tarczy zegarka w formacie WFF jest następująca:
<WatchFace width="450" height="450"> <Scene> <!-- Content to be rendered --> </Scene> </WatchFace>
Szablon Android Studio zawiera podstawowy dokument w formacieres/raw/watchface.xml. Aby obsługiwać różne kształty i rozmiary ekranów, zadeklaruj obsługę wielu kształtów i rozmiarów.
Element główny to zawsze WatchFace. Wartości height i width określają zakres przestrzeni współrzędnych do użycia na tarczy zegarka, a tarcza zegarka jest skalowana tak, aby pasowała do urządzenia, na którym jest używana. Wartości height i width nie reprezentują rzeczywistych pikseli.
Format tarczy zegarka zawiera kilka szczegółów dotyczących tarczy zegarka:
- Metadane, takie jak godzina i liczba kroków widoczne na obrazie podglądu tarczy zegarka.
- Konfiguracje użytkownika, takie jak różne motywy kolorystyczne tarczy zegarka, elementy, które użytkownik może włączać i wyłączać, oraz wybór spośród kilku elementów. Wersja 2 formatu tarczy zegarka wprowadza warianty, które mogą pojawiać się w konfiguracji użytkownika. Każda wersja określa gotową konfigurację użytkownika, która zawiera typ i styl elementów wyświetlanych z godziną na tarczy zegarka. Te gotowe ustawienia ułatwiają tworzenie grup elementów, które są atrakcyjne wizualnie. W aplikacji towarzyszącej Wear OS użytkownicy widzą różne wersje tarczy zegarka w przewijanym wierszu.
- Scena zawierająca elementy wizualne tarczy zegarka. Elementy, które pojawiają się bliżej końca sceny, są wyświetlane nad innymi elementami, więc typowa kolejność jest następująca:
- wskazówki zegara analogowego lub tekst zegara cyfrowego;
- komplikacje, które wyświetlają dodatkowe informacje, takie jak dzień tygodnia lub liczba kroków użytkownika;
- inne grafiki, które uatrakcyjniają lub dekorują tarczę zegarka, np. obraz obozowiska;
- Grupy elementów, które umożliwiają jednoczesne modyfikowanie wielu elementów. W scenie możesz utworzyć warianty tych grup, co pozwala selektywnie ukrywać lub modyfikować treści, gdy system przechodzi w tryb otoczenia oszczędzający energię.
Atrybuty są ściśle określone i mają wytyczne dotyczące częstotliwości i prawidłowych wartości, co pozwala uniknąć większości źródeł błędów podczas tworzenia tarczy zegarka.
Deklarowanie obsługi kształtów tarcz zegarka (opcjonalnie)
Ten krok jest konieczny tylko wtedy, gdy chcesz obsługiwać różne zachowania w przypadku różnych rozmiarów tarcz zegarka. Możesz pominąć ten krok, jeśli chcesz, aby tarcza zegara była skalowana do rozmiaru zegarka.
W katalogu zasobów res/xml aplikacji zadeklaruj zestaw kształtów tarczy zegarka, które obsługujesz, w pliku watch_face_shapes.xml:
<WatchFaces> <WatchFace shape="CIRCLE" width="300" height="300" file="@raw/watchface_basic"/> <WatchFace shape="CIRCLE" width="450" height="450" file="@raw/watchface"/> </WatchFaces>
Następnie określ wygląd i działanie tarczy zegarka dla każdego kształtu tarczy.
Jeśli nie zdefiniujesz pliku kształtów, potrzebujesz tylko 1 pliku,watchface.xml.
Korzystając z przykładu z tej sekcji, surowe pliki XML będą wyglądać tak:
res/raw/watchface.xmlres/raw/watchface_basic.xml
Identyfikowanie wydawcy tarczy zegara (opcjonalnie)
Opcjonalnie w pliku manifestu aplikacji zadeklaruj dowolny ciąg znaków, którego możesz użyć do identyfikacji wydawcy tarczy zegarka lub nazwy i wersji narzędzia, którego używasz:
<property android:name="com.google.wear.watchface.format.publisher" android:value="{toolName}-{toolVersion}" />
Sprawdzanie poprawności i wydajności tarczy zegarka
Podczas tworzenia tarczy zegarka i przed przesłaniem jej do Google Play sprawdź, czy nie zawiera błędów składniowych, korzystając z wbudowanej w Android Studio funkcji sprawdzania formatu tarczy zegarka. Automatycznie wyróżnia błędy w kodzie i uwzględnia wersje.
Sprawdź też, czy tarcza zegarka spełnia wymagania dotyczące wykorzystania pamięci, uruchamiając narzędzie memory footprint (ślad pamięci).
- Dowiedz się więcej o optymalizacji wykorzystania pamięci i sprawdzaniu wykorzystania pamięci w ramach przygotowań do publikacji.
- Dowiedz się więcej o korzystaniu z walidatora XML w ramach cyklu rozwoju.
Tworzenie pakietu aplikacji z tarczami zegarka
Najłatwiejszym sposobem tworzenia i wdrażania tarczy zegarka jest Android Studio, które ma wbudowaną obsługę konfiguracji uruchamiania tarczy zegarka. Po kliknięciu przycisku Uruchom Android Studio wdraża tarczę zegarka na urządzeniu lub emulatorze i ustawia ją jako aktywną tarczę.
Przykładowe tarcze zegarka
Więcej przykładów projektów w formacie tarczy zegarka znajdziesz na GitHubie.
Polecane dla Ciebie
- Uwaga: tekst linku jest wyświetlany, gdy język JavaScript jest wyłączony.
- AAPT2
- Podstawy Jetpack Compose
- Pierwsze kroki z CameraX