Aplikacje na telewizory mają taką samą strukturę jak aplikacje na telefony i tablety. To podobieństwo oznacza, że zmodyfikować istniejące aplikacje, aby działały też na urządzeniach telewizyjnych, lub utworzyć nowe na podstawie wie, jak tworzyć aplikacje na Androida.
Ważne: aplikacja musi spełniać określone wymagania, aby są klasyfikowane jako aplikacje na Androida TV w Google Play. Aby uzyskać więcej informacji, zapoznaj się z tymi wymaganiami w jakości aplikacji na telewizory.
W tym przewodniku opisujemy, jak przygotować środowisko programistyczne do tworzenia aplikacji na telewizory oraz wymagane minimalne zmiany, aby aplikacja mogła działać na urządzeniach telewizyjnych.
Więcej informacji o projektowaniu aplikacji na telewizor znajdziesz w sekcji Projektowanie Telewizor. Zobacz też przykładowe aplikacje w repozytorium Androida TV na GitHubie.
Określ obsługiwane formaty multimediów
W poniższej dokumentacji znajdziesz informacje na temat kodeków, protokołów i formatów obsługiwane przez Androida TV:
Konfigurowanie projektu telewizyjnego
Z tej sekcji dowiesz się, jak skonfigurować projekt telewizyjny, niezależnie od tego, modyfikowanie istniejącej aplikacji na Androida, aby działała na urządzeniach telewizyjnych, lub utworzenie nową aplikację TV. Jeśli masz już aplikację na Androida, dodanie obsługi Androida TV pozwoli Ci projektować interfejsu użytkownika na telewizorze przy jednoczesnym wykorzystaniu dotychczasowej architektury aplikacji.
Istnieją 2 główne komponenty, które wykorzystujesz do tworzenia aplikacji działających na telewizorach:
- Aktywność dla telewizora: w pliku manifestu aplikacji zadeklarować aktywność, która ma być uruchamiana na urządzeniach telewizyjnych.
- Biblioteki telewizyjne:opcjonalnie możesz dodać co najmniej 1 z bibliotek biblioteki Androidax na telewizory. Ich listę znajdziesz w innej sekcji tego przewodnika. Te biblioteki udostępniają widżety do tworzenia interfejsów użytkownika.
Wymagania wstępne
Zanim zaczniesz tworzyć aplikację na telewizory, musisz wykonać te czynności:
-
Zaktualizuj pakiet SDK do wersji 24.0.0 lub nowszej.
Zaktualizowane narzędzia w pakiecie SDK pozwalają tworzyć i testować aplikacje na telewizory. - Zaktualizuj pakiet SDK do Androida w wersji 5.0 (API 21) lub nowszej.
Zaktualizowana wersja platformy udostępnia nowe interfejsy API dla aplikacji TV. -
Utwórz lub zaktualizuj projekt aplikacji.
Aby uzyskać dostęp do nowych interfejsów API dla urządzeń telewizyjnych, utwórz projekt lub zmodyfikuj istniejący projektu, który jest kierowany na Androida 5.0 (poziom interfejsu API 21) lub nowszego.
Deklarowanie aktywności telewizyjnej
Aplikacja, która ma działać na urządzeniach telewizyjnych, musi zadeklarować aktywność programu uruchamiającego na telewizorze.
w pliku manifestu. Wykorzystuje intencję CATEGORY_LEANBACK_LAUNCHER
taki filtr. Ten filtr identyfikuje aplikację jako dostępną na telewizorze i pozwala
Google Play rozpoznaje ją jako aplikację telewizyjną. Gdy użytkownik wybierze aplikację na ekranie głównym telewizora,
ta intencja określa, które działanie należy uruchomić.
Ten fragment kodu pokazuje, jak uwzględnić ten filtr intencji w pliku manifestu:
<application android:banner="@drawable/banner" > ... <activity android:name="com.example.android.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.example.android.TvActivity" android:label="@string/app_name" android:theme="@style/Theme.Leanback"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity> </application>
Drugi wpis w pliku manifestu aktywności w tym przykładzie określa, że jest to działanie na telewizorze.
Uwaga: jeśli nie podasz tagu
Filtr intencji: CATEGORY_LEANBACK_LAUNCHER
w
nie będzie widoczna dla użytkowników korzystających z Google Play na telewizorach. Ponadto, jeśli
gdy używasz narzędzi dla programistów w celu załadowania aplikacji na telewizor, aplikacja nie ma tego filtra
nie jest widoczny w interfejsie telewizora.
Interfejs aplikacji TV lub jej część na telewizory muszą mieć prosty interfejs, który ułatwia nawigację. przy użyciu pilota z odległości 3 metrów. Jeśli modyfikujesz istniejącą aplikację, aby używać jej na telewizorze, nie używaj tego samego układ aktywności na telewizorze, z którego korzystasz na telefonach i tabletach. Wskazówki projektowania aplikacji na telewizor znajdziesz w artykule Projektowanie aplikacji na telewizor.
Zadeklaruj, że telewizor jest obsługiwany
Zadeklaruj, że aplikacja jest przeznaczona na Androida TV, zadeklaruj
android.software.leanback
funkcja.
Jeśli Twoja aplikacja działa zarówno na urządzeniach mobilnych, jak i na telewizorach, ustaw wartość atrybutu required
na
false
Jeśli ustawisz wartość atrybutu required
na true
,
Google Play udostępni aplikację tylko na urządzeniach z systemem operacyjnym Android TV.
<manifest> <uses-feature android:name="android.software.leanback" android:required="false" /> ... </manifest>
Deklarowanie ekranu dotykowego nie jest wymagane
Aplikacje, które działają na urządzeniach telewizyjnych, nie wykorzystują ekranów dotykowych do wprowadzania danych.
Aby było to jasne, należy zadeklarować w pliku manifestu aplikacji, że
Funkcja android.hardware.touchscreen
nie jest wymagana. To ustawienie określa, że Twoja aplikacja
współpracuje z telewizorem i jest wymagany, aby aplikacja była uznawana za aplikację telewizyjną w Google.
Graj. Poniższy przykładowy kod pokazuje, jak uwzględnić tę deklarację w pliku manifestu:
<manifest> <uses-feature android:name="android.hardware.touchscreen" android:required="false" /> ... </manifest>
Uwaga: w manifeście aplikacji musisz zadeklarować, że ekran dotykowy nie jest wymagany. Jak widać w tym przykładowym kodzie. W przeciwnym razie aplikacja nie pojawi się w Google Play na telewizorze. urządzenia.
Dodaj ikonę i baner na ekran główny
Aplikacje na Androida TV muszą w każdej lokalizacji zawierać zarówno ikonę ekranu głównego, jak i obraz banera. W zależności od urządzenia z Androidem TV przy uruchamianiu aplikacji używana jest ikona lub baner. widoczny na ekranie głównym w wierszach aplikacji i gier.
Aby dodać je do swojej aplikacji, opisz ikonę i baner w pliku manifestu w ten sposób:
<application ... android:icon="@mipmap/ic_launcher" android:banner="@drawable/banner" > ... </application>
Ikona ekranu głównego
Aplikacje na Androida TV, tak jak wszystkie aplikacje na Androida, muszą zawierać ikonę na ekranie głównym. Sprawdzone metody określić dogodny punkt startowy dla aplikacji i poznać szczegółowe wymagania dotyczące zasobów, Ikona i baner aplikacji na Androida TV wytycznych.
Baner na ekranie głównym
Korzystanie z android:banner
z atrybutem <application>
pozwala udostępniać domyślny baner dla wszystkich działań w aplikacji lub tag
<activity>
pozwala przesłać baner dla określonej aktywności.
W przypadku banera użyj zasobu xhdpi o rozmiarze 320 x 180 pikseli. Tekst należy umieścić w sekcji . Jeśli aplikacja jest dostępna w więcej niż jednym języku, musisz dostarczyć osobne wersje baner z tekstem dla każdego obsługiwanego języka.
Zmienianie koloru programu uruchamiającego
Uwaga: w Androidzie 12 i nowszych niestandardowe animacje ekranu powitalnego utworzone za pomocą
Interfejs API platformy SplashScreen
nie jest obsługiwany w przypadku aplikacji na Androida TV.
Po uruchomieniu aplikacji TV system wyświetla animację, która przypomina rozwijaną, wypełnioną
kręgu znajomych. Aby dostosować kolor tej animacji, ustaw android:colorPrimary
.
aplikacji telewizyjnej lub aktywności na
określony kolor. Ustaw także dwa
przejścia z atrybutów nakładania się na true
, jak widać w tym fragmencie kodu z
plik XML zasobu motywu:
<resources> <style ... > <item name="android:colorPrimary">@color/primary</item> <item name="android:windowAllowReturnTransitionOverlap">true</item> <item name="android:windowAllowEnterTransitionOverlap">true</item> </style> </resources>
Więcej informacji o pracy z motywami i stylami znajdziesz w artykule Style i motywy.
Tworzenie aplikacji na system operacyjny Android TV
Jetpack zawiera biblioteki pakietów androidx do użytku z aplikacjami na telewizory.
Utwórz na telewizorze
Tworzenie to zalecany sposób tworzenia aplikacji na system operacyjny Android TV. Oprócz głównej funkcji tworzenia wiadomości biblioteki Compose for TV zawierają specjalne komponenty przeznaczone Duży ekran:
Aby dowiedzieć się, jak utworzyć aplikację TV za pomocą funkcji Compose for TV, przeczytaj artykuł Korzystanie z Jetpack Compose na Androidzie TV.
Zestaw narzędzi interfejsu Leanback
Zestaw narzędzi interfejsu Leanback zawiera interfejsy API i widżety interfejsu dla telewizorów:
androidx.leanback.app
androidx.leanback.database
androidx.leanback.graphics
androidx.leanback.media
androidx.leanback.preference
androidx.leanback.system
androidx.leanback.widget
androidx.leanback.widget.picker
Dowiedz się, jak utworzyć aplikację na telewizory przy użyciu zestawu narzędzi interfejsu Leanback Tworzenie aplikacji do odtwarzania treści na telewizorze
Uruchamianie aplikacji TV
Uruchomienie aplikacji to ważna część procesu programowania. Możesz uruchomić aplikację na urządzenia telewizyjne skonfigurowane pod kątem debugowania USB lub korzystania z wirtualnych urządzeń telewizyjnych,
Uruchom na urządzeniu fizycznym
Skonfiguruj telewizor w ten sposób:
- Podłącz telewizor do komputera za pomocą kabla USB. W razie potrzeby znajdziesz w dokumentacji udostępnionej przez producenta urządzenia.
- Na telewizorze otwórz Ustawienia.
- W wierszu Urządzenie wybierz Informacje.
- Przewiń do sekcji Kompilacja i klikaj kilka razy Kompiluj, aż pojawi się komunikat. "Teraz jesteś programistą!"
- Wróć do Ustawień. W wierszu Ustawienia wybierz Opcje programisty.
- Wybierz Debugowanie > Debugowanie USB i wybierz Włącz.
- Wróć do ekranu głównego telewizora.
Aby przetestować aplikację na telewizorze:
- W Android Studio wybierz swój projekt i kliknij Uruchom na pasku narzędzi.
- W oknie Wybierz cel wdrożenia wybierz telewizor i kliknij OK.
Uruchamianie na urządzeniu wirtualnym
AVD Manager na Androidzie Pakiet SDK udostępnia definicje urządzeń, które pozwalają tworzyć wirtualne telewizory do uruchamiania testowania aplikacji.
Aby utworzyć telewizor wirtualny:
- Uruchom program AVD Manager. Więcej informacji: Tworzenie urządzeń wirtualnych i zarządzanie nimi
- W oknie dialogowym AVD Manager kliknij kartę Device Definitions (Definicje urządzeń).
- Wybierz jedną z definicji urządzeń z Androidem TV i kliknij Utwórz średni czas oglądania.
- Wybierz opcje emulatora i kliknij OK, aby utworzyć AVD.
Uwaga: aby uzyskać najlepszą wydajność emulatora telewizora, użyj emulatora x86. i włącz opcję Use Host GPU (Użyj GPU hosta). Używaj akceleracji urządzenia wirtualnego również wtedy, gdy jest i dostępności informacji. Więcej informacji o akceleracji sprzętowej emulatora znajdziesz w artykule Skonfiguruj akcelerację sprzętową dla Emulator Androida.
Aby przetestować aplikację na telewizorze wirtualnej:
- W Android Studio wybierz swój projekt i kliknij Uruchom na pasku narzędzi.
- W oknie Wybierz cel wdrożenia wybierz telewizor wirtualny i kliknij OK.
Więcej informacji na temat używania emulatorów znajdziesz tutaj: Uruchamianie aplikacji przy użyciu emulatora Androida. Więcej informacji o wdrażaniu aplikacji z Android Studio do środowiska wirtualnego urządzeń, przeczytaj artykuł Debugowanie aplikacji.
Włącz uruchamianie aplikacji TV jako aplikacji błyskawicznej
Funkcje błyskawiczne ułatwiają użytkownikom aby wypróbować aplikację na telewizory i pomóc w zwiększeniu rozpowszechnienia.
Aby skonfigurować aplikację TV do działania jako aplikacji błyskawicznej na urządzeniu z Androidem TV lub w emulatorze: Najpierw postępuj zgodnie z instrukcjami, utworzyć pakiet aplikacji obsługujący aplikacje błyskawicznie.
Następnie w aplikacji intent-filter
MainActivity
, upewnij się, że zarówno LAUNCHER
, jak i
LEANBACK_LAUNCHER
są zadeklarowane w AndroidManifest.xml
:
<activity android:name="com.example.android.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity>
Twoja aplikacja na telewizory jest teraz skonfigurowana do uruchamiania aplikacji błyskawicznej.
Przygotowywanie aplikacji na telewizory do publikacji
Przejrzyj listę kontrolną aplikacji telewizyjnych, aby poznać następne kroki. aby przygotować aplikację na telewizory do publikacji i rozpowszechniania.