Le app TV utilizzano la stessa struttura delle app per smartphone e tablet. Questa somiglianza significa che modificare le app esistenti in modo che vengano eseguite anche sui dispositivi TV o creare nuove app in base alle funzionalità informazioni sulla creazione di app per Android.
Importante:la tua app deve soddisfare requisiti specifici per essere considerate app per Android TV su Google Play. Per ulteriori informazioni, consulta i requisiti elencati nella qualità delle app TV.
Questa guida descrive come preparare il tuo ambiente di sviluppo per la creazione di app TV e il il numero minimo di modifiche richieste per consentire l'esecuzione di un'app sui dispositivi TV.
Per informazioni sulla progettazione di app per la TV, consulta la sezione Progettare per sulla TV. Vedi anche le app di esempio nella Repository GitHub di Android TV.
Determinare il supporto del formato multimediale
Consulta la seguente documentazione per informazioni su codec, protocolli e formati supportate da Android TV:
Configura un progetto TV
In questa sezione viene illustrato come impostare un progetto TV, indipendentemente dal fatto che tu modifica di un'app per Android esistente in modo che venga eseguita sui dispositivi TV o creazione una nuova app TV. Se hai già un'app per Android, il supporto di Android TV ti consente di progettare un'interfaccia utente per la TV riutilizzando l'architettura esistente dell'app.
Quando crei un'app da usare sui dispositivi TV, puoi utilizzare due componenti principali:
- Attività per TV: nel file manifest dell'applicazione, dichiarare un'attività che deve essere eseguita sui dispositivi TV.
- Raccolte TV:includi, se vuoi, uno o più dei seguenti elementi librerie androidx disponibili per i dispositivi TV, elencati in un'altra sezione di questa guida. Queste librerie forniscono widget per la creazione di interfacce utente.
Prerequisiti
Prima di iniziare a creare un'app per la TV, devi seguire questi passaggi:
-
Aggiorna gli strumenti dell'SDK alla versione 24.0.0 o successive.
Gli strumenti SDK aggiornati ti consentono di creare e testare app per la TV. - Aggiorna l'SDK con Android 5.0 (API 21) o versioni successive.
La versione aggiornata della piattaforma fornisce nuove API per le app TV. -
Crea o aggiorna il progetto dell'app.
Per accedere a nuove API per i dispositivi TV, crea un progetto o modificane uno esistente progetto che ha come target Android 5.0 (livello API 21) o versioni successive.
Dichiarare un'attività TV
Un'applicazione destinata a essere eseguita sui dispositivi TV deve dichiarare un'attività di avvio applicazioni per la TV
nel suo file manifest. Usa un intent CATEGORY_LEANBACK_LAUNCHER
filtro per farlo. Questo filtro identifica la tua app come attiva per la TV e ti consente
Google Play la identifichi come app TV. Quando un utente seleziona la tua app nella schermata Home della TV,
questo intent identifica l'attività da avviare.
Il seguente snippet di codice mostra come includere questo filtro per intent nel tuo file manifest:
<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>
La seconda voce del manifest di attività in questo esempio specifica che è l'attività da avviala su un dispositivo TV.
Attenzione: se non includi i campi
CATEGORY_LEANBACK_LAUNCHER
filtro per intent in
la tua app, non è visibile agli utenti che utilizzano Google Play sui dispositivi TV. Inoltre, se
app non dispone di questo filtro quando utilizzi gli strumenti per sviluppatori per caricarla su un dispositivo TV, l'app
non viene visualizzato nell'interfaccia utente della TV.
L'interfaccia utente dell'app TV o la parte TV dell'app esistente deve fornire un'interfaccia semplice per facilitare la navigazione usando un telecomando da 3 metri di distanza. Se stai modificando un'app esistente da usare sulla TV, non usare la stessa app layout dell'attività per la TV su smartphone e tablet. Per le linee guida sulla progettazione di un'app per la TV, consulta la pagina Progettazione per la TV.
Dichiara il supporto dei dispositivi TV
Dichiara che la tua app è destinata ad Android TV dichiarando il
Funzionalità android.software.leanback
.
Se l'app viene eseguita sia su dispositivi mobili che su TV, imposta il valore dell'attributo required
su
false
. Se imposti il valore dell'attributo required
su true
,
Google Play renderà disponibile la tua app soltanto sul sistema operativo Android TV.
<manifest> <uses-feature android:name="android.software.leanback" android:required="false" /> ... </manifest>
Dichiarazione touchscreen non richiesto
Le applicazioni destinate all'esecuzione su dispositivi TV non si basano sui touchscreen per l'input.
Per essere chiari, il file manifest dell'app TV deve dichiarare che
La funzionalità android.hardware.touchscreen
non è obbligatoria. Questa impostazione identifica la tua app come
funzionare su un dispositivo TV ed è necessario affinché la tua app sia considerata un'app TV in Google
Gioca. Il seguente esempio di codice mostra come includere questa dichiarazione del file manifest:
<manifest> <uses-feature android:name="android.hardware.touchscreen" android:required="false" /> ... </manifest>
Attenzione: nel file manifest dell'app devi dichiarare che non è necessario un touchscreen. come mostrato in questo codice di esempio. In caso contrario, la tua app non viene visualizzata in Google Play sulla TV dispositivi mobili.
Fornisci un'icona e un banner nella schermata Home
Le app per Android TV devono fornire sia un'icona della schermata Home sia un'immagine del banner per ogni localizzazione. A seconda del dispositivo Android TV, l'icona o il banner viene utilizzato per avviare l'app. visualizzato nella schermata Home nelle righe relative ad app e giochi.
Per aggiungerli alla tua app, descrivi l'icona e il banner nel file manifest come segue:
<application ... android:icon="@mipmap/ic_launcher" android:banner="@drawable/banner" > ... </application>
Icona della schermata Home
Le app Android TV, come tutte le app per Android, devono includere un'icona nella schermata Home. Per le best practice su un ottimo punto di lancio per la tua app e requisiti dettagliati per gli asset, consulta Icona e banner dell'app Android TV linee guida.
Banner della schermata Home
Utilizza la android:banner
con <application>
, per fornire un banner predefinito per tutte le attività dell'applicazione, o con il
<activity>
per fornire un banner per un'attività specifica.
Per il banner, utilizza una risorsa xhdpi di dimensioni pari a 320 x 180 pixel. Il testo deve essere incluso nel dell'immagine. Se la tua app è disponibile in più lingue, devi fornire versioni separate delle con testo per ogni lingua supportata.
Modificare il colore di Avvio app
Attenzione:in Android 12 e versioni successive, le animazioni della schermata iniziale personalizzate create utilizzando
Le API della piattaforma SplashScreen
non sono supportate per le app per Android TV.
All'avvio di un'app TV, il sistema mostra un'animazione simile a un'app riempita che si espande
cerchio. Per personalizzare il colore di questa animazione, imposta android:colorPrimary
della tua attività o app TV a un colore specifico. Inoltre, imposta due
transizione degli attributi di sovrapposizione a true
come mostrato nello snippet seguente da un
file XML delle risorse del tema:
<resources> <style ... > <item name="android:colorPrimary">@color/primary</item> <item name="android:windowAllowReturnTransitionOverlap">true</item> <item name="android:windowAllowEnterTransitionOverlap">true</item> </style> </resources>
Per ulteriori informazioni sull'utilizzo di temi e stili, vedi Stili e temi.
Crea un'app per il sistema operativo Android TV
Jetpack include librerie di pacchetti androidx da utilizzare con le app TV.
Scrivi per la TV
Compose è il metodo consigliato per creare app per il sistema operativo Android TV. Insieme al componente principale di Compose librerie Compose per TV, che forniscono componenti dedicati progettati appositamente per i schermo di casa:
Scopri come creare un'app TV con Compose per la TV in Usare Jetpack Compose su Android TV.
Toolkit UI Leanback
Il toolkit di Leanback UI fornisce API e widget dell'interfaccia utente per i dispositivi TV:
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
Scopri come creare un'app TV con il toolkit Leanback UI in Realizza app per riprodurre contenuti sulla TV.
Esegui app TV
L'esecuzione dell'app è una parte importante del processo di sviluppo. Puoi eseguire l'app su Dispositivi TV configurati per supportare il debug USB o utilizzare dispositivi TV virtuali.
Esegui su un dispositivo fisico
Configura il dispositivo TV come segue:
- Usa un cavo USB per collegare il dispositivo TV al computer di sviluppo. Se necessario, consulta la documentazione fornita dal produttore del dispositivo.
- Sul dispositivo TV, vai a Impostazioni.
- Nella riga Dispositivo, seleziona Informazioni.
- Scorri fino a Crea e seleziona più volte Crea fino a quando non ricevi il messaggio. "Ora sei uno sviluppatore!"
- Torna a Impostazioni. Nella riga Preferenze, seleziona Opzioni sviluppatore.
- Seleziona Debug > Debug USB e seleziona On.
- Torna alla schermata Home della TV.
Per testare l'applicazione sul dispositivo TV:
- In Android Studio, seleziona il progetto e fai clic su Esegui dalla barra degli strumenti.
- Nella finestra Seleziona destinazione deployment, seleziona il tuo dispositivo TV e fai clic su Ok.
Esegui su un dispositivo virtuale
Gestione AVD in Android L'SDK fornisce definizioni di dispositivi che ti consentono di creare dispositivi TV virtuali per l'esecuzione e per testare le tue applicazioni.
Per creare un dispositivo TV virtuale:
- Avvia Gestione AVD. Per ulteriori informazioni, vedi Creare e gestire dispositivi virtuali
- Nella finestra di dialogo Gestione AVD, fai clic sulla scheda Definizioni dispositivo.
- Seleziona una delle definizioni di dispositivo Android TV e fai clic su Crea durata di visualizzazione media.
- Seleziona le opzioni dell'emulatore e fai clic su OK per creare la durata di visualizzazione media.
Nota: per prestazioni ottimali dell'emulatore TV, utilizza l'emulatore x86. e attiva l'opzione Utilizza GPU host. Usa l'accelerazione dei dispositivi virtuali anche quando disponibili. Per ulteriori informazioni sull'accelerazione hardware dell'emulatore, vedi Configura l'accelerazione hardware per il Emulatore Android.
Per testare l'applicazione sul dispositivo TV virtuale:
- In Android Studio, seleziona il progetto e fai clic su Esegui dalla barra degli strumenti.
- Nella finestra Seleziona destinazione deployment, seleziona il tuo dispositivo TV virtuale e fai clic su Ok.
Per ulteriori informazioni sull'uso degli emulatori, vedi Esegui le app sull'emulatore Android. Per ulteriori informazioni sul deployment di app da Android Studio ai computer dispositivi, consulta Eseguire il debug dell'app.
Attiva l'esecuzione dell'app TV come app istantanea
Le esperienze istantanee rendono più semplice per gli utenti per provare la tua app TV e può contribuire ad aumentarne l'adozione.
Per configurare l'esecuzione dell'app TV come app istantanea su un emulatore o un dispositivo Android TV: segui prima le istruzioni per crea un app bundle ad attivazione istantanea.
Poi, da intent-filter
per l'app TV
MainActivity
, assicurati che LAUNCHER
e
LEANBACK_LAUNCHER
dichiarati in 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>
L'app TV è ora configurata per essere eseguita come app istantanea.
Preparare l'app TV per la pubblicazione
Consulta l'elenco di controllo delle app TV per i passaggi successivi per preparare la tua app TV alla pubblicazione e alla distribuzione.