Wear OS obsługuje metody wprowadzania inne niż głosowe dzięki rozszerzeniu platformy edytora metody wprowadzania (IME) Androida. Platforma IME obsługuje wirtualne klawiatury ekranowe, które umożliwiają użytkownikom wprowadzanie tekstu za pomocą kliknięć klawiszy, pisma odręcznego lub gestów.
Użytkownicy Wear OS mogą wybierać spośród różnych opcji wprowadzania zdalnego. Dostępne są następujące opcje:
- Dyktowanie
- Emotikony
- Szablony odpowiedzi
- Inteligentna odpowiedź
- Domyślny IME
Wear OS ma domyślny IME systemu, ale umożliwia też deweloperom zewnętrznym tworzenie niestandardowych IME. Interfejsy API IME używane w urządzeniach Wear OS są takie same jak w przypadku innych urządzeń, ale ich użycie jest nieco inne ze względu na ograniczony rozmiar ekranu.
W tym dokumencie znajdziesz wskazówki, które pomogą Ci utworzyć IME na Wear OS.
Tworzenie metody wprowadzania na Wear
Platforma Android udostępnia standardową platformę do tworzenia IME. Aby utworzyć IME na Wear OS, musisz zoptymalizować IME pod kątem ograniczonego rozmiaru ekranu urządzenia do noszenia.
Filtry IME na Wear OS
Aby dowiedzieć się, jak utworzyć metodę wprowadzania na Wear OS, postępuj zgodnie z instrukcjami tworzenia metody wprowadzania na telefonach. Następnie dodaj do pliku manifestu filtry Google Play z tych sekcji, aby utworzyć IME na Wear OS.
Poziom API
Jeśli tworzysz IME na Wear OS, pamiętaj, że ta
funkcja jest obsługiwana tylko na Androidzie 6.0 (poziom API 23) i nowszych wersjach.
Aby mieć pewność, że IME można zainstalować tylko na urządzeniach do noszenia, które obsługują metody wprowadzania
inne niż głosowe, ustaw w pliku aplikacji
build.gradle.kts wartość minSdkVersion na 23 lub wyższą.
Zestawy funkcji urządzenia
Aby kontrolować, jak aplikacja jest filtrowana na urządzeniach, które nie obsługują IME na Wear OS, np. na iPhone'ach, dodaj do manifestu aplikacji te elementy:
<uses-feature android:required="true" android:name="android.hardware.type.watch" />
Wywoływanie metody wprowadzania
Wear OS udostępnia ustawienia użytkownika na zegarku, które umożliwiają włączenie wielu
IME z listy zainstalowanych IME. Gdy użytkownik włączy Twój IME, może go
wywołać z powiadomienia lub aplikacji za pomocą interfejsu API
RemoteInput.
Ogólne kwestie dotyczące IME
Oto kilka kwestii, które należy wziąć pod uwagę podczas implementowania IME na Wear:
- Ustaw działanie domyślne.
RemoteInputi aplikacje Wear OS oczekują tylko wprowadzania tekstu w jednym wierszu. Zawsze używaj klawisza Enter, aby wywołać funkcjęsendDefaultEditorAction, która powoduje zamknięcie klawiatury przez aplikację i przejście do następnego kroku lub działania. - Używaj IME w trybie pełnoekranowym.
Metody wprowadzania na Wear OS zajmują większość ekranu, pozostawiając bardzo mało miejsca na aplikację. Używanie trybu pełnoekranowego zapewnia optymalne wrażenia użytkownika niezależnie od interfejsu aplikacji. W trybie pełnoekranowym
ExtractedTextzapewnia widok edytowanego pola tekstowego i można go dostosować, aby pasował do reszty interfejsu metody wprowadzania. Więcej informacji o trybie pełnoekranowym znajdziesz w artykuleInputMethodService. - Obsługuj flagi
InputTypeZ powodów związanych z prywatnością w IME należy obsługiwać co najmniej flagę
InputTypeTYPE_TEXT_VARIATION_PASSWORD. Gdy IME jest w trybie hasła, upewnij się, że klawiatura jest zoptymalizowana pod kątem pojedynczego naciśnięcia klawisza, co oznacza, że automatyczne sprawdzanie pisowni, autouzupełnianie i wprowadzanie gestami są wyłączone. Co najważniejsze, klawiatura w trybie hasła musi obsługiwać symbole American Standard Code for Information Interchange (ASCII) niezależnie od języka wprowadzania. Więcej informacji znajdziesz w artykule Określanie typu metody wprowadzania. - Udostępnij klawisz do przełączania na następną metodę wprowadzania.
Android umożliwia użytkownikom przełączanie się między wszystkimi IME obsługiwanymi przez platformę. W implementacji IME ustaw wartość logiczną
supportsSwitchingToNextInputMethodnatrue. Dzięki temu IME będzie obsługiwać mechanizm przełączania, aby aplikacje mogły przełączać się na następny IME obsługiwany przez platformę. Więcej informacji o implementowaniu przełączania między IME znajdziesz w artykule Przełączanie między podtypami IME.