Compose for TV è l'approccio moderno per la creazione di interfacce utente di Android TV. Compose for TV sblocca tutti i vantaggi di Jetpack Compose di Android per le tue app TV, rendendo molto più semplice la creazione di UI belle e funzionali per la tua app.
Alcuni vantaggi specifici dell'utilizzo di Compose for TV includono:
- Flessibilità: Compose può essere utilizzato per creare qualsiasi tipo di UI, da layout semplici ad animazioni complesse. I componenti funzionano subito, ma possono anche essere personalizzati e stilizzati in base alle esigenze della tua app.
- Sviluppo semplificato e accelerato: Compose è compatibile con il codice esistente e consente agli sviluppatori di creare app in modo più efficiente con meno codice.
- Intuitivo: Compose utilizza una sintassi dichiarativa che ti consente di apportare modifiche alla tua UI, eseguire il debug, comprendere e rivedere il codice.
Se non hai familiarità con l'utilizzo del toolkit Jetpack Compose, consulta il percorso di apprendimento di Compose. Molti dei principi di sviluppo per Compose per dispositivi mobili si applicano anche alla TV. Per ulteriori informazioni sui vantaggi generali di un framework UI dichiarativo, consulta Perché Compose. Per saperne di più, consulta anche il repository di esempi di Compose for TV su GitHub.
Prompt AI
Scopri come aggiungere il supporto per Android TV
Questo prompt chiede indicazioni su come aggiungere il supporto di Android TV alla tua app utilizzando Jetpack Compose per TV anziché Leanback.
How do I add support for Android TV to my application?
Use Jetpack Compose for TV as part of the response instead of Leanback.
Compatibilità
Compose for TV funziona su Android TV con Android 5.0 (livello API 21) o versioni successive. L'utilizzo della versione 1.0 di Compose for TV richiede la versione 1.3.0 delle librerie androidx.compose e Kotlin 1.7.10.
Configura
L'utilizzo di Jetpack Compose su Android TV è simile a quello di Jetpack Compose per qualsiasi
altro progetto Android. La differenza principale è che Compose for TV
aggiunge librerie che offrono componenti ottimizzati per la TV e semplificano la creazione
di interfacce utente personalizzate per la TV. In alcuni casi, questi componenti condividono lo stesso
nome delle loro controparti non TV, ad esempio
androidx.tv.material3.Button
e
androidx.compose.material3.Button
.
Dipendenze del toolkit Jetpack Compose
Per utilizzare Compose per TV, includi le dipendenze del toolkit Jetpack Compose
nel file build.gradle
della tua app nel seguente modo:
Kotlin
dependencies { val composeBom = platform("androidx.compose:compose-bom:2025.05.00") implementation(composeBom) // General compose dependencies. implementation("androidx.activity:activity-compose:1.10.1") implementation("androidx.compose.ui:ui-tooling-preview") debugImplementation("androidx.compose.ui:ui-tooling") // Compose for TV dependencies. implementation("androidx.tv:tv-material:1.0.0") }
Groovy
dependencies { def composeBom = platform('androidx.compose:compose-bom:2025.05.00') implementation composeBom // General compose dependencies. implementation 'androidx.activity:activity-compose:1.10.1' implementation 'androidx.compose.ui:ui-tooling-preview' debugImplementation 'androidx.compose.ui:ui-tooling' // Compose for TV dependencies. implementation 'androidx.tv:tv-material:1.0.0' }
Quali sono le differenze
I componenti dei materiali TV sono progettati per il salotto, con indicatori di messa a fuoco chiari e comportamento di input compatibile con il telecomando. Per informazioni dettagliate su come utilizzare questi componenti specifici, consulta le guide alla progettazione dell'interfaccia utente della TV.
Utilizza la versione TV delle API, ove possibile, per usufruire di queste funzionalità.
Sebbene sia tecnicamente possibile utilizzare la versione mobile di Compose Material,
non è ottimizzata per lo stile unico delle interazioni su Android TV. Inoltre, la combinazione di Compose Material con Compose Material di Compose for TV può causare un comportamento imprevisto. Ad esempio, poiché ogni libreria ha il proprio oggetto MaterialTheme
, è possibile che i colori, la tipografia o le forme non siano coerenti se vengono utilizzate entrambe le versioni.
La seguente tabella illustra le differenze di dipendenza tra TV e dispositivi mobili:
Dipendenza TV (androidx.tv.*) |
Confronto | Dipendenza mobile (androidx.compose.*) |
---|---|---|
androidx.tv:tv-material | anziché | androidx.compose.material3:material3 |
Risorse aggiuntive
Guide alla progettazione per TV
Una panoramica dei componenti TV dedicati per la creazione di interfacce utente con link a risorse per sviluppatori pertinenti.Esempio di catalogo di materiali TV
Un'app catalogo che mostra come implementare i principi di Material Design utilizzando Compose for TV.Esempio JetStream
Un'app di streaming di contenuti multimediali che mostra l'utilizzo di TV Compose con una tipica app Material e un'architettura reale.Introduzione a Compose per TV
Questo codelab illustra la creazione di un'app di riproduzione video con una schermata di navigazione del catalogo e una schermata dei dettagli.
Continua a leggere
Consulta queste guide per scoprire come creare esperienze ottimizzate per la TV per: