Catatan: Dengan dirilisnya Android 9.0 (API level 28), ada
support library versi baru yang disebut
AndroidX, yang merupakan bagian dari Jetpack.
Library AndroidX
berisi support library yang ada, juga menyertakan komponen Jetpack terbaru.
Anda dapat terus menggunakan support library ini.
Artefak historis (versi 27 dan yang lebih lama, serta yang dipaketkan sebagai android.support.*
) akan
tetap tersedia di Google Maven. Namun, semua pengembangan
library baru akan terjadi di library AndroidX.
Kami merekomendasikan penggunaan library AndroidX di semua project baru. Sebaiknya pertimbangkan
juga untuk memigrasikan project yang ada ke AndroidX.
Support Library menyediakan berbagai class untuk membangun aplikasi, mulai dari komponen aplikasi dasar, widget antarmuka pengguna, penanganan media, hingga komponen aplikasi TV. Banyak class yang kompatibel dengan implementasinya, tetapi beberapa di antaranya merupakan fitur baru yang tersendiri.
Dokumen ini memberikan ringkasan kategori fitur penting yang tersedia di support library, dan class tertentu yang harus Anda ketahui saat mem-build aplikasi.
Untuk informasi cara menambahkan kode support library ke project pengembangan aplikasi Anda, lihat Penyiapan Support Library. Untuk informasi cara menyertakan paket support library tertentu dalam project Anda, lihat Paket Support Library.
Komponen Aplikasi
Class Support Library ini menyediakan implementasi yang kompatibel dengan versi lama untuk berbagai fitur platform inti dan penting. Implementasi ini biasanya memperluas versi class sebelumnya untuk menangani metode dan fitur baru yang ditambahkan dalam rilis platform yang lebih baru. Beberapa class berikut merupakan implementasi statis lengkap dari API framework.
- Aktivitas
ActivityCompat
- Mencakup implementasi yang kompatibel dengan versi lama untuk fitur aktivitas utama terbaru, seperti Izin Runtime dan transisi animasi.FragmentActivity
- Menyediakan implementasi yang kompatibel dengan versi lama untuk aktivitas agar dapat menggunakan versi support libraryFragment
danLoader
API.AppCompatActivity
- Menyediakan tema warna Material, penambahan tint widget, dan dukungan panel aplikasi ke perangkat versi lama. Penggunaan class ini mengharuskan Anda menggunakan temaTheme.AppCompat
untuk presentasi visual yang konsisten.
Fragment
- Menyediakan implementasi mandiri dari classFragment
framework. Class ini harus digunakan denganFragmentActivity
.ContextCompat
- Menyediakan dukungan untuk berbagai fitur yang diperkenalkan dalam rilis classContext
yang lebih baru, termasuk dukungan izin, akses file, dan informasi warna.IntentCompat
- Menyediakan dukungan untuk berbagai fitur yang diperkenalkan dalam rilis classIntent
yang lebih baru, termasuk metode untuk memilih dan memulai aktivitas tertentu.Loader
- Menyediakan implementasi statis dari classLoader
framework, dan merupakan class dasar untuk class dukunganAsyncTaskLoader
danCursorLoader
.Preference
- Class ini dan subclass-nya menyediakan implementasi antarmuka pengguna setelan aplikasi sedemikian rupa sehingga kompatibel dengan versi lama.ContentResolverCompat
- Menyediakan dukungan untuk berbagai fitur yang diperkenalkan dalam rilis classContentResolver
yang lebih baru, khususnya metodequery()
dengan dukungan untuk membatalkan kueri yang sedang berlangsung.
Antarmuka Pengguna
Class support library ini menyediakan implementasi widget dan perilaku antarmuka pengguna utama, serta membantu Anda membuat antarmuka aplikasi yang lebih modern pada perangkat model lama. Beberapa dari widget ini hanya tersedia melalui support library.
Container tata letak dengan kegunaan umum
Class dukungan di bawah ini menyediakan container antarmuka pengguna yang dapat disesuaikan untuk berbagai kasus penggunaan desain.
RecyclerView
- Membuat tata letak untuk menampilkan daftar panjang, dengan strategi untuk menghindari pemakaian memori yang tinggi. Class ini memungkinkan Anda membuat tampilan jendela terbatas ke set data yang lebih besar, sehingga menghindari konsumsi memori yang besar saat menampilkan daftar. Untuk informasi selengkapnya tentang penggunaanRecyclerView
, lihat panduan Recycler View.ViewPager
- Menyediakan tata letak yang memungkinkan pengguna membalik halaman data ke kiri dan ke kanan.GridLayout
- Menyediakan tata letak beserta turunannya dalam petak persegi panjang, yang mendukung sembarang rentang sel yang berdekatan dan distribusi ruang yang fleksibel. Class ini menyediakan versi classGridLayout
yang kompatibel dengan versi lama, yang diperkenalkan di Android 4.0 (API level 14).PercentFrameLayout
danPercentRelativeLayout
- Menyediakan tata letak yang mendukung dimensi dan margin berbasis persentase untuk tampilan turunannya dan kontennya.
Catatan: Class ViewPager
, RecyclerView
, PercentFrameLayout
, dan PercentRelativeLayout
hanya tersedia
dari Support Library.
Container tata letak dengan kegunaan khusus
Class dukungan ini menyediakan implementasi yang kompatibel untuk pola tata letak tertentu, seperti tampilan panel samping yang dapat ditarik dari tepi layar, panel geser, dan daftar bersarang dalam daftar.
DrawerLayout
- Membuat tata letak yang memungkinkan tampilan panel samping interaktif ditarik dari tepi jendela tampilan.SlidingPaneLayout
- Menyediakan tata letak horizontal multipanel untuk digunakan di bagian atas antarmuka pengguna aplikasi untuk membuat tata letak yang dapat beradaptasi dengan lancar ke berbagai ukuran layar, yang akan diperluas pada layar yang lebih besar dan diciutkan agar pas pada layar yang lebih kecil.NestedScrollView
- Tata letak scroll yang mendukung penyusunan bertingkat tampilan scroll lainnya, memungkinkan Anda membuat daftar, dengan item yang berisi daftar turunan tambahan. Daftar bertingkat ini dapat berisi item yang dapat di-scroll secara horizontal atau vertikal, terpisah dari daftar induk.SwipeRefreshLayout
- Menyediakan tata letak untuk mendukung pemuatan ulang data untuk daftar atau tata letak lainnya dengan gestur geser jari.
Tampilan, dialog, dan widget
Support library menyediakan sejumlah class untuk menampilkan konten dan memberikan elemen interaksi pengguna dalam suatu tata letak.
CardView
- Class kustom support library untuk membuat kartu tampilan gaya Desain Material. Class ini didasarkan pada FrameLayout dengan sudut membulat dan drop shadow.AppCompatDialogFragment
- Menyediakan dialog bergaya konsisten dengan memperluasDialogFragment
dan menggunakanAppCompatDialog
.NotificationCompat
- Menyediakan dukungan untuk gaya notifikasi yang lebih baru dengan cara yang kompatibel dengan versi lama.SearchView
- Menyediakan class bagi pengguna untuk memasukkan kueri penelusuran dan mengirimkan permintaan ke penyedia penelusuran, yang terutama ditujukan untuk digunakan di panel aplikasi.
Desain Material
Support library menyediakan sejumlah class untuk menerapkan rekomendasi antarmuka pengguna Desain Material.
CoordinatorLayout
- Menyediakan container tingkat teratas untuk tata letak yang menggabungkan komponen dan perilaku Desain Material. Class ini juga dapat digunakan sebagai penampung untuk interaksi tertentu dengan satu atau beberapa tampilan turunan.AppBarLayout
- Menyediakan implementasi dari banyak fitur scroll konsep panel aplikasi Desain Material.FloatingActionButton
- Membuat tombol mengambang untuk menampilkan tindakan yang dipromosikan jenis khusus. Elemen antarmuka pengguna Desain Material ini ditampilkan sebagai ikon melingkar yang mengambang di atas antarmuka pengguna aplikasi. Untuk informasi lebih lanjut, lihat Menambahkan Tombol Tindakan Mengambang (FAB).DrawerLayout
- Membuat panel navigasi—panel UI yang menampilkan menu navigasi utama aplikasi Anda. Panel ini muncul saat pengguna menggeser jari dari tepi kiri layar atau mengetuk ikon panel samping di panel aplikasi. Untuk informasi lebih lanjut, lihat Membuat Panel Navigasi.TabLayout
- Menyediakan tata letak untuk menampilkan halaman tab. Widget ini dirancang untuk digunakan dengan classViewPager
.Snackbar
- Menyediakan widget untuk menampilkan masukan ringan tentang operasi menggunakan pop-up snackbar.
Grafis
Paket android.support.graphics.drawable
menyediakan dukungan untuk
vektor drawable.
Dengan menggunakan vektor drawable, Anda dapat mengganti beberapa aset PNG dengan satu
grafik vektor, yang ditetapkan dalam XML.
VectorDrawableCompat
memberikan
dukungan untuk vektor drawable pada API level 9 ke atas. AnimatedVectorDrawableCompat
memberikan
dukungan untuk animasi vektor drawable pada API level 11 dan yang lebih baru.
Aksesibilitas
Paket android.support.v4.view.accessibility
menyediakan
class kompatibilitas untuk mengimplementasikan fitur aksesibilitas yang diperkenalkan pada
API level 14 dan yang lebih baru, yang memungkinkan layanan aksesibilitas mengamati dan
mengidentifikasi interaksi pengguna dengan item yang ditampilkan di layar.
ExploreByTouchHelper
- Memberikan dukungan aksesibilitas dalam View kustom yang mewakili kumpulan item logis seperti tampilan.
Pemutaran Media
Android Support Library menyediakan backport untuk fungsi router media ke perangkat yang menjalankan versi platform sebelum Android 4.1 (API level 16). Class berikut memungkinkan kontrol pemutaran media di seluruh perangkat Android yang terhubung:
MediaRouter
- Memungkinkan aplikasi mengontrol perutean saluran dan streaming media dari perangkat saat ini ke speaker eksternal dan perangkat tujuan.MediaControllerCompat
- Memungkinkan aplikasi berinteraksi dengan sesi media yang sedang berlangsung. Aplikasi dapat menyediakan tombol kontrol media melalui mekanisme ini dan mengirim perintah pemutaran lainnya ke sesi.MediaSessionCompat
- Menyediakan antarmuka remote control untuk pemutaran media, yang memungkinkan interaksi dengan pengontrol media, tombol volume, tombol media, dan kontrol transport di aplikasi lain atau di perangkat terpisah.
Aplikasi TV
Android SDK menyediakan library untuk mendukung faktor bentuk seperti perangkat layar besar dan pengontrol terkaitnya. Suatu aplikasi dapat bergantung pada support library yang sesuai untuk menyediakan fungsi di berbagai versi platform, dan dapat menyediakan konten pada layar eksternal, speaker, dan perangkat tujuan lainnya.
- paket android.support.v17.Lean.*
Aplikasi Wear
SDK Android menyediakan library untuk mendukung smartwatch. Library ini memberikan fungsionalitas ke aplikasi yang tersedia bagi pengguna setiap kali mereka memakai smartwatch.
- paket android.support.wear.*
Utilitas
Android Support Library menawarkan sejumlah fitur yang tidak dibangun ke dalam framework ini. Library ini menawarkan berbagai utilitas yang dapat digunakan aplikasi.
- Paket android.support.v4.util