Leanback

Scrivi app per dispositivi Android TV utilizzando widget e frammenti di modelli compatibili con i dpad.
Aggiornamento più recente Release stabile Candidato di rilascio Versione beta Versione alpha
15 novembre 2023 1.0.0 1.1.0-rc02 - 1.2.0-alpha04

Dichiarazione delle dipendenze

Per aggiungere una dipendenza su Leanback, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per l'app o il modulo:

Trendy

dependencies {
    def leanback_version = "1.2.0-alpha04"

    implementation "androidx.leanback:leanback:$leanback_version"

    // leanback-preference is an add-on that provides a settings UI for TV apps.
    implementation "androidx.leanback:leanback-preference:$leanback_version"

    // leanback-paging is an add-on that simplifies adding paging support to a RecyclerView Adapter.
    implementation "androidx.leanback:leanback-paging:1.1.0-alpha11"

    // leanback-tab is an add-on that provides customized TabLayout to be used as the top navigation bar.
    implementation "androidx.leanback:leanback-tab:1.1.0-beta01"
}

Kotlin

dependencies {
    val leanback_version = "1.2.0-alpha04"

    implementation("androidx.leanback:leanback:$leanback_version")

    // leanback-preference is an add-on that provides a settings UI for TV apps.
    implementation("androidx.leanback:leanback-preference:$leanback_version")

    // leanback-paging is an add-on that simplifies adding paging support to a RecyclerView Adapter.
    implementation("androidx.leanback:leanback-paging:1.1.0-alpha11")

    // leanback-tab is an add-on that provides customized TabLayout to be used as the top navigation bar.
    implementation("androidx.leanback:leanback-tab:1.1.0-beta01")
}

Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze delle build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Contattaci se scopri nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Leanback-Grid Versione 1.0.0

Versione 1.0.0-alpha03

15 novembre 2023

androidx.leanback:leanback-grid:1.0.0-alpha03 viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.

Aggiornamenti delle dipendenze

Versione 1.0.0-alpha02

6 settembre 2023

androidx.leanback:leanback-grid:1.0.0-alpha02 viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.

Modifiche alle API

  • Reso pubblico setFocusOutAllowed per consentire l'impostazione programmatica delle proprietà di focus out. (Iebd99).

Correzioni di bug

  • Assicurati che le griglie vengano trattate come griglie dai servizi di accessibilità impostando un nome della classe di informazioni del nodo A11y. (I12812)
  • Aggiungi un suono di navigazione mancante quando lo scorrimento fluido è continuo. (f49767)

Versione 1.0.0-alpha01

17 novembre 2021

androidx.leanback:leanback-grid:1.0.0-alpha01 viene rilasciato. La versione 1.0.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Le seguenti classi/interfacce sono state spostate da leanback alla nuova libreria leanback-grid: BaseGridView, FacetProvider, FacetProviderAdapter, GridLayoutManager, HorizontalGridView, ItemAlignmentFacet, OnChildLaidOutListener, OnChildSelectedListener, OnChildViewHolderSelectedListener, VerticalGridView, ViewHolderTask, Visibility. Questa modifica preserva la compatibilità del programma binario. Chiunque sia disposto a utilizzare solo i componenti della visualizzazione griglia di leanback può utilizzare direttamente leanback-grid come dipendenza. (If1e49)

Leanback Leanback-Preference Versione 1.2.0

Versione 1.2.0-alpha04

15 novembre 2023

androidx.leanback:leanback:1.2.0-alpha04 e androidx.leanback:leanback-preference:1.2.0-alpha04 vengono rilasciati. La versione 1.2.0-alpha04 contiene questi commit.

Correzioni di bug

Aggiornamento delle dipendenze

  • Aggiorna il requisito recyclerview alla versione 1.3.2 per correggere un arresto anomalo comune nelle app per la TV

Versione 1.2.0-alpha03

6 settembre 2023

androidx.leanback:leanback:1.2.0-alpha03 e androidx.leanback:leanback-preference:1.2.0-alpha03 vengono rilasciati. La versione 1.2.0-alpha03 contiene questi commit.

Modifiche alle API

  • Aggiunta di GuidedActionAppCompatEditText per supportare meglio il tema AppCompat. (ab7cf1, dc954d)

Versione 1.2.0-alpha02

17 novembre 2021

androidx.leanback:leanback:1.2.0-alpha02 e androidx.leanback:leanback-preference:1.2.0-alpha02 vengono rilasciati. La versione 1.2.0-alpha02 contiene questi commit.

Nuove funzionalità

  • Le seguenti classi/interfacce sono state spostate da leanback alla nuova libreria leanback-grid: BaseGridView, FacetProvider, FacetProviderAdapter, GridLayoutManager, HorizontalGridView, ItemAlignmentFacet, OnChildLaidOutListener, OnChildSelectedListener, OnChildViewHolderSelectedListener, VerticalGridView, ViewHolderTask, Visibility. Questa modifica preserva la compatibilità del programma binario. Chiunque sia disposto a utilizzare solo i componenti della visualizzazione griglia di leanback può utilizzare direttamente leanback-grid come dipendenza. (If1e49)

Versione 1.2.0-alpha01

21 luglio 2021

androidx.leanback:leanback:1.2.0-alpha01 e androidx.leanback:leanback-preference:1.2.0-alpha01 vengono rilasciati. La versione 1.2.0-alpha01 contiene questi commit.

Nuove funzionalità

  • Rendi il Leanback GridLayoutManager pubblico e scambiabile in BaseGridView. (f316b5)

Modifiche alle API

  • Rendi il Leanback GridLayoutManager pubblico e scambiabile in BaseGridView. (f316b5)

Versione 1.1.0

Leanback Versione 1.1.0-rc02

21 luglio 2021

androidx.leanback:leanback:1.1.0-rc02 viene rilasciato. La versione 1.1.0-rc02 contiene questi commit.

Correzioni di bug

  • È stato corretto il bug relativo allo sfondo del frammento dei dettagli. (40d8e3)

Leanback Leanback-Preference Versione 1.1.0-rc01

7 aprile 2021

androidx.leanback:leanback:1.1.0-rc01 e androidx.leanback:leanback-preference:1.1.0-rc01 vengono rilasciati. La versione 1.1.0-rc01 contiene questi commit.

  • Sono state corrette le perdite nelle visualizzazioni in SearchSupportFragment() (6c47a1, b/171909417)
  • Rendi il riconoscimento vocale facoltativo per SearchSupportFragment (4ff949,b/169936953)

Leanback-Paging versione 1.1

Versione 1.1.0-alpha11

15 novembre 2023

androidx.leanback:leanback-paging:1.1.0-alpha11 viene rilasciato senza modifiche. La versione 1.1.0-alpha11 contiene questi commit.

Versione 1.1.0-alpha10

6 settembre 2023

androidx.leanback:leanback-paging:1.1.0-alpha10 viene rilasciato. La versione 1.1.0-alpha10 contiene questi commit.

Nuove funzionalità

  • Aggiorna leanback-paging a Paging 3.1.0. (882ed1)

Leanback-Paging Versione 1.1.0-alpha09

17 novembre 2021

androidx.leanback:leanback-paging:1.1.0-alpha09 viene rilasciato. La versione 1.1.0-alpha09 contiene questi commit.

Correzioni di bug

  • Aggiornamento eseguito in modo da utilizzare le API di paging più recenti.

Leanback-Paging Versione 1.1.0-alpha08

21 luglio 2021

androidx.leanback:leanback-paging:1.1.0-alpha08 viene rilasciato. La versione 1.1.0-alpha08 contiene questi commit.

Modifiche alle API

  • Sono state aggiunte le API .peek() e .snapshot() a PagingDataAdapter, consentendo di ispezionare i dati presentati senza attivare il recupero della pagina. (Ic8917)

Leanback-Paging Versione 1.1.0-alpha07

13 gennaio 2021

androidx.leanback:leanback-paging:1.1.0-alpha07 viene rilasciato. La versione 1.1.0-alpha07 contiene questi commit.

Modifiche alle API

  • Sono state aggiornate le proprietà di convenienza (CombinedLoadStates.refresh, CombinedLoadStates.prepend, CombinedLoadStates.append) per eseguire la transizione solo da Loading a NotLoading dopo che gli stati di caricamento del mediatore e dell'origine sono NotLoading per garantire l'applicazione dell'aggiornamento remoto. (I65619)

Leanback Leanback-Preference Leanback-Tab Versione 1.1.0-beta01

2 dicembre 2020

androidx.leanback:leanback:1.1.0-beta01, androidx.leanback:leanback-preference:1.1.0-beta01 e androidx.leanback:leanback-tab:1.1.0-beta01 vengono rilasciati. La versione 1.1.0-beta01 contiene questi commit.

Correzioni di bug

  • Correggi la perdita di visualizzazione quando spingi VerticalGridSupportFragment in backstack (Iaac69, b/171909417)
  • Correggi la perdita di visualizzazioni quando esegui il push di ExploreSupportFragment in un backstack (I34483, b/171909417)
  • Correggi la perdita di visualizzazione quando esegui il push di DetailsSupportFragment in uno stack (Ifec9e, b/171909417)
  • Correggi la perdita di visualizzazione quando esegui il push di RowsSupportFragment in backstack (I985d4, b/171909417)
  • Correggi l'animazione di transizione sullo sfondo GuidedStepSupportFragment. (I86d15, b/173647688)
  • Correggi IllegalArgumentException durante il ripristino di GuidedStepSupportFragment (Ic829f, b/172000115)
  • Correggi l'eccezione GridLayoutManager NullPointerException in findContainingItemView() quando clearfocus() (Id0e42)

Leanback-Paging Versione 1.1.0-alpha06

2 dicembre 2020

androidx.leanback:leanback-paging:1.1.0-alpha06 viene rilasciato. La versione 1.1.0-alpha06 contiene questi commit.

Modifiche alle API

  • Le API datarefreshFlow / datarefreshListener sono state rimosse in quanto ridondanti con gli aggiornamenti LoadStateFlow / Listener. Per coloro che eseguono la migrazione, l'equivalente di LoadStateFlow è:

    loadStateFlow.distinctUntilChangedBy { it.refresh }
        .filter { it.refresh is NotLoading }
    

    (Ib5570, b/173530908)

  • Ritiro completo dei metodi datarefreshFlow / Listener con una clausola replaceWith. (I6e2dd)

Versione 1.1.0-alpha05

1° ottobre 2020

androidx.leanback:leanback-*:1.1.0-alpha05 viene rilasciato. La versione 1.1.0-alpha05 contiene questi commit.

Nuove funzionalità

  • Lascia che la navigazione di A11Y rispetti gli attributi GridLayoutManager focusOutFront e focusOutEnd. (b/161390258)

Correzioni di bug

  • Correggi la perdita di visualizzazioni in GuidanceStylist.onDestroyView() (b/164841457)
  • Correggi ConcatAdapter in GridLayoutManager (b/165694295)
  • leanback-tab: miglioramenti a Javadoc e refactoring del codice secondario (aosp/1393383)
  • Rimuovi il metodo setRecyclerView dall'API che è stata aggiunta quando lo stesso metodo è stato deprecato su RecyclerView. Aggiorna lib leanback per utilizzare il nuovo metodo API addRecyclerListener di RecyclerView. (I14798)

Versione 1.1.0-alpha04

11 agosto 2020

Vengono rilasciati androidx.leanback:leanback:1.1.0-alpha04, androidx.leanback:leanback-paging:1.1.0-alpha04, androidx.leanback:leanback-preference:1.1.0-alpha04 e androidx.leanback:leanback-tab:1.1.0-alpha04. La versione 1.1.0-alpha04 contiene questi commit.

Nuove funzionalità

  • LeanbackTabLayout offre la navigazione in alto (solitamente visualizzata orizzontalmente nella parte superiore dell'app) durante l'esperienza di navigazione.
  • Il paging per Leanback semplifica l'aggiunta del supporto del paging a un RecyclerView.Adapter.
  • Aggiunti temi di compatibilità per le app per leanback che semplificheranno la creazione di un'unica base di codice tra dispositivi mobili e TV.

Modifiche alle API

  • Aggiunto adattatore basato su asyncpagingdatadiffer per i widget Leanback (If0dfe)
  • Aggiunta di un TabLayout personalizzato da utilizzare come barra di navigazione in alto in Leanback (I1e304)

Versione 1.1.0-alpha03

18 dicembre 2019

androidx.leanback:leanback:1.1.0-alpha03 e androidx.leanback:leanback-preference:1.1.0-alpha03 vengono rilasciati. Leanback versione 1.1.0-alpha03 contiene questi commit e Leanback-Preference Versione 1.1.0-alpha03 contiene questi commit.

Nuove funzionalità

  • BaseGridView ora supporta velocità di scorrimento personalizzate (aosp/952718)
  • Semplificazione al tocco delle voci con procedura guidata (aosp/1167964)
  • Esposto il valore BaseGridView OnLayoutCompleteListener in modo che le app possano eseguire le trasformazioni Visualizza dopo il superamento del layout. (aosp/1164409).

Modifiche alle API

  • È stata aggiunta una nuova API per consentire velocità di scorrimento personalizzate di BaseGridView (aosp/952718)
  • Aggiunta una nuova API per aggiungere OnLayoutCompleteListener in BaseGridView (aosp/1164409)

Correzioni di bug

  • Risolto un bug per cui il passaggio del layout rapido non aggiornava l'allineamento di un bambino. (aosp/1122745).
  • Risolto l'arresto anomalo di overflow dello stack nel widget Selettore quando lo stato attivo cambia (aosp/1168473)

Modifiche delle dipendenze

  • Leanback-preference: la dipendenza di androidx.preference è bloccata su 1.1.0 (aosp/1181902)

Versione 1.1.0-alpha02

7 maggio 2019

androidx.leanback:leanback:1.1.0-alpha02 e androidx.leanback:leanback-preference:1.1.0-alpha02 vengono rilasciati. I commit inclusi in questa versione possono essere associati a commissioni Leanback e leanback-preference.

Nuove funzionalità

  • Ora RowsSupportFragment può condividere Viewholder con altri RowsSupportFragments, il che migliorerebbe le prestazioni per un'interfaccia utente a più schede.

Modifiche alle API

  • È stato aggiunto PlaybackSupportFragment.setShowOrHideControlsOverlayOnUserInteraction() per consentire la disattivazione dell'app che disattiva/mostra automaticamente i controlli di riproduzione quando viene premuto il D-pad.

Correzioni di bug

  • È stato risolto il problema relativo alla preferenza di Leanback con Frammenti a causa di una modifica nella libreria delle preferenze.
  • Correzione del bug di navigazione alla pressione del tasto INDIETRO in SearchEditText

Versione 1.1.0-alpha01

30 gennaio 2019

androidx.leanback:leanback 1.1.0-alpha01 viene rilasciato.

Nuove funzionalità

  • Aggiunto il widget Pin Picker.
  • La funzionalità di ritaglio dei contorni è ora disattivata per impostazione predefinita sul dispositivo con poca memoria.
  • Comportamento personalizzato PlaybackSupportFragment consentito per mostrare/nascondere i controlli (b/122918400)

Modifiche alle API

  • I frammenti di framework sono stati deprecati.
  • Nuova classe Pinpickuper.

Correzioni di bug

  • Risolto un arresto anomalo della transazione con frammento dopo l'arresto di BrowseSupportFragment
  • GuidedStepSupportFragment non deve ritagliare gli elementi in VerticalGridView (aosp/787396)
  • onCreateActionsStylist() e onCreateGuidanceStylist() sono stati spostati dal costruttore a GuidedSupportFragment.onCreate() (aosp/787397)
  • Risolto un bug per cui SearchSupportFragment non si concentrava sul frammento dei risultati. (aosp/798833).
  • Risolto un bug dello scorrimento in VerticalGridView e HorizontalGridView (aosp/858809)

androidx.leanback-preference 1.1.0-alpha01 viene rilasciato.

Nuove funzionalità

  • Sono state aggiunte classi di frammenti androidx e classi di frammenti framework deprecate.
  • Colori e caratteri ora si basano sugli attributi del tema del framework.

Modifiche alle API

  • Le nuove classi di frammenti androidx e le classi di frammenti framework sono state deprecate.