Leanback

Menulis aplikasi untuk perangkat Android TV menggunakan widget yang mendukung dpad dan fragmen template.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
15 November 2023 1.0.0 1.1.0-rc02 - 1.2.0-alpha04

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada Leanback, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

Groovy

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")
}

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Leanback-Grid Versi 1.0.0

Versi 1.0.0-alpha03

15 November 2023

androidx.leanback:leanback-grid:1.0.0-alpha03 dirilis. Versi 1.0.0-alpha03 berisi commit ini.

Update Dependensi

Versi 1.0.0-alpha02

6 September 2023

androidx.leanback:leanback-grid:1.0.0-alpha02 dirilis. Versi 1.0.0-alpha02 berisi commit ini.

Perubahan API

  • Membuat setFocusOutAllowed menjadi publik untuk memungkinkan properti fokus ditetapkan secara terprogram. (Iebd99)

Perbaikan Bug

  • Pastikan petak diperlakukan sebagai petak oleh layanan a11y dengan menyetel nama class info node a11y. (I12812)
  • Menambahkan suara navigasi yang hilang saat jatuh ke scroll yang lancar. (f49767)

Versi 1.0.0-alpha01

17 November 2021

androidx.leanback:leanback-grid:1.0.0-alpha01 dirilis. Versi 1.0.0-alpha01 berisi commit ini.

Fitur Baru

  • Memindahkan class/antarmuka berikut dari leanback ke library leanback-grid baru: BaseGridView, FacetProvider, FacetProviderAdapter, GridLayoutManager, HorizontalGridView, ItemAlignmentFacet, OnChildLaidOutListener, OnChildSelectedListener, OnChildViewHolderSelectedListener, VerticalGridView, ViewHolderTask, Visibility. Perubahan ini mempertahankan kompatibilitas biner. Siapa pun yang hanya ingin menggunakan komponen tampilan petak leanback dapat langsung menggunakan leanback-grid sebagai dependensi. (If1e49)

Leanback Leanback-Preference Versi 1.2.0

Versi 1.2.0-alpha04

15 November 2023

androidx.leanback:leanback:1.2.0-alpha04 dan androidx.leanback:leanback-preference:1.2.0-alpha04 dirilis. Versi 1.2.0-alpha04 berisi commit ini.

Perbaikan Bug

Pembaruan Dependensi

  • Perbarui persyaratan recyclerview ke 1.3.2 untuk memperbaiki error umum di aplikasi TV

Versi 1.2.0-alpha03

6 September 2023

androidx.leanback:leanback:1.2.0-alpha03 dan androidx.leanback:leanback-preference:1.2.0-alpha03 dirilis. Versi 1.2.0-alpha03 berisi commit ini.

Perubahan API

  • Menambahkan GuidedActionAppCompatEditText untuk mendukung tema AppCompat dengan lebih baik. (ab7cf1, dc954d)

Versi 1.2.0-alpha02

17 November 2021

androidx.leanback:leanback:1.2.0-alpha02 dan androidx.leanback:leanback-preference:1.2.0-alpha02 dirilis. Versi 1.2.0-alpha02 berisi commit ini.

Fitur Baru

  • Memindahkan class/antarmuka berikut dari leanback ke library leanback-grid baru: BaseGridView, FacetProvider, FacetProviderAdapter, GridLayoutManager, HorizontalGridView, ItemAlignmentFacet, OnChildLaidOutListener, OnChildSelectedListener, OnChildViewHolderSelectedListener, VerticalGridView, ViewHolderTask, Visibility. Perubahan ini mempertahankan kompatibilitas biner. Siapa pun yang hanya ingin menggunakan komponen tampilan petak leanback dapat langsung menggunakan leanback-grid sebagai dependensi. (If1e49)

Versi 1.2.0-alpha01

21 Juli 2021

androidx.leanback:leanback:1.2.0-alpha01 dan androidx.leanback:leanback-preference:1.2.0-alpha01 dirilis. Versi 1.2.0-alpha01 berisi commit ini.

Fitur Baru

  • Membuat leanback GridLayoutManager menjadi publik dan dapat ditukarkan di BaseGridView. (f316b5)

Perubahan API

  • Membuat leanback GridLayoutManager menjadi publik dan dapat ditukarkan di BaseGridView. (f316b5)

Versi 1.1.0

Leanback Versi 1.1.0-rc02

21 Juli 2021

androidx.leanback:leanback:1.1.0-rc02 dirilis. Versi 1.1.0-rc02 berisi commit ini.

Perbaikan Bug

  • Memperbaiki bug latar belakang fragmen detail. (40d8e3)

Leanback Leanback-Preference Versi 1.1.0-rc01

7 April 2021

androidx.leanback:leanback:1.1.0-rc01 dan androidx.leanback:leanback-preference:1.1.0-rc01 dirilis. Versi 1.1.0-rc01 berisi commit berikut ini.

Leanback-Paging Versi 1.1

Versi 1.1.0-alpha11

15 November 2023

androidx.leanback:leanback-paging:1.1.0-alpha11 dirilis tanpa perubahan. Versi 1.1.0-alpha11 berisi commit ini.

Versi 1.1.0-alpha10

6 September 2023

androidx.leanback:leanback-paging:1.1.0-alpha10 dirilis. Versi 1.1.0-alpha10 berisi commit berikut.

Fitur Baru

  • Mengupdate Lean-paging ke Paging 3.1.0. (882ed1)

Leanback-Paging Versi 1.1.0-alpha09

17 November 2021

androidx.leanback:leanback-paging:1.1.0-alpha09 dirilis. Versi 1.1.0-alpha09 berisi commit ini.

Perbaikan Bug

  • Diupdate untuk menggunakan API paging terbaru.

Leanback-Paging Versi 1.1.0-alpha08

21 Juli 2021

androidx.leanback:leanback-paging:1.1.0-alpha08 dirilis. Versi 1.1.0-alpha08 berisi commit ini.

Perubahan API

  • Menambahkan .peek() dan .snapshot() API ke PagingDataAdapter, sehingga memungkinkan pemeriksaan data yang disajikan tanpa memicu pengambilan halaman. (Ic8917)

Leanback-Paging Versi 1.1.0-alpha07

13 Januari 2021

androidx.leanback:leanback-paging:1.1.0-alpha07 dirilis. Versi 1.1.0-alpha07 berisi commit ini.

Perubahan API

  • Memperbarui properti kemudahan, CombinedLoadStates.refresh, CombinedLoadStates.prepend, dan CombinedLoadStates.append menjadi transisi dari Loading ke NotLoading saja setelah pemuatan sumber dan mediator dalam status NotLoading untuk memastikan pembaruan jarak jauh telah diterapkan. (I65619)

Leanback Leanback-Preference Leanback-Tab Versi 1.1.0-beta01

2 Desember 2020

androidx.leanback:leanback:1.1.0-beta01, androidx.leanback:leanback-preference:1.1.0-beta01, dan androidx.leanback:leanback-tab:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit berikut ini.

Perbaikan Bug

  • Memperbaiki kebocoran tampilan saat memindahkan VerticalGridSupportFragment ke backstack (Iaac69, b/171909417)
  • Memperbaiki kebocoran tampilan saat memindahkan BrowseSupportFragment ke backstack (I34483, b/171909417)
  • Memperbaiki kebocoran tampilan saat memindahkan DetailsSupportFragment ke backstack (Ifec9e, b/171909417)
  • Memperbaiki kebocoran tampilan saat memindahkan RowsSupportFragment ke backstack (I985d4, b/171909417)
  • Memperbaiki animasi transisi latar belakang GuidedStepSupportFragment. (I86d15, b/173647688)
  • Memperbaiki IllegalArgumentException saat memulihkan GuidedStepSupportFragment (Ic829f, b/172000115)
  • Memperbaiki GridLayoutManager NullPointerException di findContainingItemView() saat clearFocus() (Id0e42)

Leanback-Paging Versi 1.1.0-alpha06

2 Desember 2020

androidx.leanback:leanback-paging:1.1.0-alpha06 dirilis. Versi 1.1.0-alpha06 berisi commit ini.

Perubahan API

  • dataRefreshFlow/dataRefreshListener API telah dihapus karena redundan dengan pembaruan loadStateFlow/Pemroses. Bagi yang bermigrasi, nilai loadStateFlow yang setara adalah:

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

    (Ib5570, b/173530908)

  • Metode dataRefreshFlow/Pemroses tidak digunakan lagi sepenuhnya dengan klausa replaceWith. (I6e2dd)

Versi 1.1.0-alpha05

1 Oktober 2020

androidx.leanback:leanback-*:1.1.0-alpha05 dirilis. Versi 1.1.0-alpha05 berisi commit ini.

Fitur Baru

  • Mengizinkan navigasi A11Y mematuhi atribut GridLayoutManager focusOutFront dan focusOutEnd. (b/161390258)

Perbaikan Bug

  • Memperbaiki kebocoran View di GuidanceStylist.onDestroyView() (b/164841457)
  • Memperbaiki ConcatAdapter di GridLayoutManager (b/165694295)
  • leanback-tab: Peningkatan Javadoc dan pemfaktoran ulang kode minor (aosp/1393383)
  • Menghapus metode setRecyclerView dari API yang ditambahkan saat metode yang sama sudah tidak digunakan lagi di RecyclerView. Mengupdate leanback lib agar menggunakan metode API addRecyclerListener baru dari RecyclerView. (I14798)

Versi 1.1.0-alpha04

11 Agustus 2020

androidx.leanback:leanback:1.1.0-alpha04, androidx.leanback:leanback-paging:1.1.0-alpha04, androidx.leanback:leanback-preference:1.1.0-alpha04, dan androidx.leanback:leanback-tab:1.1.0-alpha04 dirilis. Versi 1.1.0-alpha04 berisi commit berikut ini.

Fitur Baru

  • LeanbackTabLayout menyediakan navigasi atas (biasanya ditampilkan secara horizontal di seluruh bagian atas aplikasi) dalam pengalaman jelajah.
  • Paging untuk Leanback menyederhanakan penambahan dukungan paging ke RecyclerView.Adapter.
  • Menambahkan tema appcompat untuk leanback yang akan menyederhanakan pembuatan code base tunggal antara perangkat seluler dan TV.

Perubahan API

  • Menambahkan adaptor berdasarkan asyncpagingdatadiffer untuk widget leanback (If0dfe)
  • Menambahkan TabLayout yang disesuaikan untuk digunakan sebagai menu navigasi atas di leanback (I1e304)

Versi 1.1.0-alpha03

18 Desember 2019

androidx.leanback:leanback:1.1.0-alpha03 dan androidx.leanback:leanback-preference:1.1.0-alpha03 dirilis. Leanback Versi 1.1.0-alpha03 berisi commit berikut dan Leanback-Preference Versi 1.1.0-alpha03 berisi commit berikut.

Fitur baru

  • BaseGridView sekarang mendukung kecepatan scroll kustom (aosp/952718)
  • Sentuhan item panduan kini menjadi lebih mudah (aosp/1167964)
  • Mengekspos OnLayoutCompleteListener BaseGridView sehingga aplikasi dapat melakukan transformasi View setelah tata letak diteruskan. (aosp/1164409)

Perubahan API

  • Menambahkan API baru untuk memungkinkan kecepatan scroll BaseGridView kustom (aosp/952718)
  • Menambahkan API baru untuk menambahkan OnLayoutCompleteListener di BaseGridView (aosp/1164409)

Perbaikan bug

  • Memperbaiki bug yang menyebabkan penerusan tata letak cepat tidak mengupdate penyelarasan turunan. (aosp/1122745)
  • Memperbaiki error stack overflow di widget Alat Pilih saat fokus berubah (aosp/1168473)

Perubahan dependensi

  • Leanback-preference: menetapkan dependensi androidx.preference ke 1.1.0 (aosp/1181902)

Versi 1.1.0-alpha02

7 Mei 2019

androidx.leanback:leanback:1.1.0-alpha02 dan androidx.leanback:leanback-preference:1.1.0-alpha02 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di commit leanback dan commit leanback-preference.

Fitur baru

  • RowsSupportFragment sekarang diizinkan untuk berbagi ViewHolders dengan RowsSupportFragment lainnya, yang akan meningkatkan performa untuk UI multi-tab.

Perubahan API

  • Menambahkan PlaybackSupportFragment.setShowOrHideControlsOverlayOnUserInteraction() untuk memungkinkan aplikasi menonaktifkan sembunyikan/tampilkan otomatis kontrol pemutaran saat DPAD ditekan.

Perbaikan bug

  • Memperbaiki tema Fragment leanback-preference yang rusak akibat perubahan pada library preferensi.
  • Memperbaiki bug navigasi saat tombol BACK ditekan pada SearchEditText

Versi 1.1.0-alpha01

30 Januari 2019

androidx.leanback:leanback 1.1.0-alpha01 dirilis.

Fitur baru

  • Menambahkan widget PinPicker.
  • Pemangkasan outline sekarang dinonaktifkan secara default pada perangkat dengan RAM rendah.
  • Mengizinkan PlaybackSupportFragment kustom menampilkan/menyembunyikan perilaku kontrol (b/122918400)

Perubahan API

  • Fragment framework tidak digunakan lagi.
  • Class PinPicker baru.

Perbaikan bug

  • Memperbaiki error transaksi fragmen setelah BrowseSupportFragment dihentikan
  • GuidedStepSupportFragment tidak boleh memotong item dalam VerticalGridView (aosp/787396)
  • onCreateActionsStylist() dan onCreateGuidanceStylist() dipindahkan dari konstruktor ke GuidedSupportFragment.onCreate() (aosp/787397)
  • Memperbaiki bug yang menyebabkan SearchSupportFragment gagal berfokus ke fragmen hasil. (aosp/798833)
  • Memperbaiki bug scroll di VerticalGridView dan HorizontalGridView (aosp/858809)

androidx.leanback-preference 1.1.0-alpha01 dirilis.

Fitur baru

  • Menambahkan class fragmen androidx, menghentikan penggunaan class fragmen framework.
  • Warna dan font sekarang didasarkan pada atribut tema framework.

Perubahan API

  • Class fragmen androidx baru, class fragmen framework tidak digunakan lagi.