Compose per TV è l'approccio moderno per la creazione di interfacce utente Android TV. Compose per TV sblocca tutti i vantaggi di Jetpack Compose di Android per le tue app per TV, semplificando notevolmente la creazione di UI belle e funzionali per la tua app.
Ecco alcuni vantaggi specifici dell'utilizzo di Compose per TV:
- Flessibilità: Compose può essere utilizzato per creare qualsiasi tipo di interfaccia utente, da layout semplici ad animazioni complesse. I componenti funzionano subito, ma possono anche essere personalizzati e impostati 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 all'interfaccia utente, eseguire il debug, comprendere e rivedere il codice.
Se non hai dimestichezza con l'utilizzo del toolkit Jetpack Compose, consulta il percorso di Compose. Molti degli stessi principi di sviluppo di Compose per il mobile 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 per TV su GitHub.
Novità
Prompt di IAScopri come aggiungere il supporto per Android TV
Questa richiesta di assistenza riguarda l'aggiunta del 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 per 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 qualsiasi altro progetto Android. La differenza principale è che Compose per 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
dell'app come segue:
Kotlin
dependencies { val composeBom = platform("androidx.compose:compose-bom:2024.10.01") implementation(composeBom) // General compose dependencies. implementation("androidx.activity:activity-compose:1.9.2") 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:2024.10.01') implementation composeBom // General compose dependencies. implementation 'androidx.activity:activity-compose:1.9.2' 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' }
Differenze
I componenti del materiale della TV sono progettati per il salotto, con indicatori di messa a fuoco chiari e comportamento di input adatto al telecomando. Per informazioni dettagliate su come utilizzare questi componenti specifici, consulta le guide di progettazione dell'interfaccia utente della TV.
Se possibile, utilizza la versione per TV delle API 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 per TV può comportare 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 dispositivo mobile:
Dipendenza TV (androidx.tv.*) |
Confronto | Dipendenza mobile (androidx.compose.*) |
---|---|---|
androidx.tv:tv-material | anziché | androidx.compose.material3:material3 |
Risorse aggiuntive
Linee guida per la progettazione di TV
Una panoramica dei componenti TV dedicati per la creazione di interfacce utente con link alle risorse per gli sviluppatori pertinenti.Esempio di catalogo Material per TV
Un'app di cataloghi che mostra come implementare i principi di Material Design utilizzando Compose per TV.Esempio di JetStream
Un'app di streaming multimediale che dimostra l'utilizzo di TV Compose con un'app Materiale tipica e un'architettura reale.Introduzione a Compose per TV
Questo codelab illustra la procedura per creare un'app di riproduzione video con una schermata di browser del catalogo e una schermata dei dettagli.
Continua a leggere
Consulta queste guide per scoprire come creare esperienze ottimizzate per la TV per: