Android Jetpack
Mengembangkan UI dengan Compose
Pelajari cara menggunakan Jetpack
Pelatihan Dasar
Tutorial Interaktif
Aplikasi contoh Now in Android
Library Jetpack Pelajari semua library
* Library yang populer dan sering digunakan akan dicantumkan terlebih dahulu
activity * | Mengakses API composable yang dibuat dari Activity. |
appcompat * | Mengizinkan akses ke API baru pada versi API platform yang lebih lama (sebagian besar menggunakan Desain Material). |
appsearch * | Membuat kemampuan penelusuran dalam aplikasi khusus untuk pengguna Anda. |
camera * | Membuat aplikasi kamera seluler. |
compose * | Menentukan UI Anda secara terprogram dengan fungsi composable yang mendeskripsikan bentuk dan dependensi datanya. |
databinding * | Mengikat komponen UI di tata letak ke sumber data di aplikasi Anda menggunakan format deklaratif. |
fragment * | Membagi aplikasi Anda menjadi beberapa layar mandiri yang dihosting dalam Activity. |
hilt * | Memperluas fungsionalitas Dagger Hilt untuk mengaktifkan injeksi dependensi class tertentu dari library androidx. |
lifecycle * | Membuat komponen berbasis siklus proses yang dapat menyesuaikan perilaku berdasarkan status siklus proses saat ini dari suatu aktivitas atau fragmen. |
Komponen Desain Material * | Komponen UI Desain Material modular dan dapat disesuaikan untuk Android. |
navigation * | Membuat dan menyusun UI dalam aplikasi, menangani deep link, dan menavigasi antar-layar. |
paging * | Memuat data dalam halaman dan menampilkannya di RecyclerView. |
room * | Membuat, menyimpan, dan mengelola data persisten yang didukung oleh database SQLite. |
test * | Pengujian di Android. |
work * | Menjadwalkan dan menjalankan tugas latar belakang berbasis batasan yang dapat ditangguhkan. |
ads | Mendapatkan ID iklan dengan atau tanpa Layanan Play. |
annotation | Mengekspos metadata yang memudahkan alat dan developer lain memahami kode aplikasi Anda. |
arch.core | Helper untuk dependensi arch lainnya, termasuk aturan pengujian JUnit yang dapat digunakan dengan LiveData. |
asynclayoutinflater | Meng-inflate tata letak secara asinkron untuk menghindari jank di UI. |
autofill | Meningkatkan akurasi isi otomatis melalui petunjuk yang diperluas. |
benchmark | Mengukur performa kode Anda secara akurat dalam Android Studio. |
biometric | Mengautentikasi dengan biometrik atau kredensial perangkat, dan melakukan operasi kriptografi. |
bluetooth | Gunakan fitur Bluetooth platform Android dengan API yang kompatibel dengan versi sebelumnya. |
browser | Menampilkan halaman di browser default pengguna. |
camera.media3 | TODO |
camera.viewfinder | Jendela Bidik berbasis Composable dan View Mandiri untuk Kamera" |
car-app | Mem-build aplikasi dengan template untuk Android Auto dan Android Automotive OS. |
cardview | Mengimplementasikan pola kartu Desain Material dengan sudut melengkung dan drop shadow. |
collection | Mengurangi dampak memori dari koleksi baru dan lama yang berukuran kecil. |
compose.animation | Mem-build animasi di aplikasi Jetpack Compose untuk memperkaya pengalaman pengguna. |
compose.compiler | Mentransformasi fungsi @Composable dan mengaktifkan pengoptimalan dengan plugin compiler Kotlin. |
compose.foundation | Menulis aplikasi Jetpack Compose dengan elemen penyusun siap pakai dan memperluas dasar untuk mem-build bagian sistem desain Anda sendiri. |
compose.material | Mem-build UI Jetpack Compose dengan Komponen Desain Material siap pakai. Ini adalah titik entri pada tingkat yang lebih tinggi untuk Compose, yang dirancang untuk menyediakan komponen yang cocok dengan yang dijelaskan di www.material.io. |
compose.material3 | Mem-build UI Jetpack Compose dengan Komponen Desain Material 3, evolusi berikutnya dari Desain Material. Material 3 menyertakan tema dan komponen yang diperbarui serta fitur personalisasi Material You, seperti warna dinamis. Material 3 juga didesain agar selaras dengan gaya visual dan UI sistem Android 12 yang baru. |
compose.material3.adaptive | Gunakan library adaptif Material 3 untuk membuat UI adaptif yang akan menyesuaikan secara otomatis sesuai dengan konfigurasi jendela saat ini seperti class ukuran jendela atau postur perangkat. Library ini menyediakan penerapan scaffold default dan composable elemen penyusun yang diperlukan untuk membuat pengalaman kustom Anda sendiri. |
compose.runtime | Elemen penyusun yang penting untuk model pemrograman dan pengelolaan status Compose, serta runtime inti untuk ditargetkan oleh Plugin Compose Compiler. |
compose.ui | Komponen dasar compose UI yang diperlukan untuk berinteraksi dengan perangkat, termasuk tata letak, gambar, dan input. |
concurrent | Memindahkan tugas dari thread utama dengan coroutine dan memanfaatkan ListenableFuture. |
constraintlayout | Mengubah posisi dan ukuran widget secara fleksibel dengan posisi relatif. |
contentpager | Memuat dan memanggil semua data ContentProvider di thread latar belakang. |
coordinatorlayout | Menempatkan widget aplikasi level teratas, seperti AppBarLayout dan FloatingActionButton. |
core | Menargetkan API dan fitur platform terbaru sekaligus mendukung perangkat lama. |
core.uwb | Menerapkan UWB (ultra-wideband) pada perangkat yang didukung. |
credentials | Library ini memberikan akses terpadu ke kredensial pengguna. Hal ini dapat mencakup sandi, kunci sandi, dan kredensial gabungan. Library ini harus digunakan untuk memberikan pengalaman login yang lancar dan aman. |
credentials.registry | Untuk mengatasi hal ini, kami menambahkan mekanisme registry baru yang memungkinkan aplikasi memberikan kredensial digital dengan cara yang menjaga privasi. Pada tingkat tinggi, aplikasi penyedia akan melakukan prapendaftaran semua kredensial digital kandidatnya dengan Pengelola Kredensial; Saat menerima permintaan aplikasi untuk kredensial digital tertentu, Pengelola Kredensial akan menjalankan pencocokan kredensial dan UI pemilih pengguna di sandbox. |
cursoradapter | Mengekspos data Cursor ke widget ListView. |
customview | Mengimplementasikan tampilan kustom. |
datastore | Menyimpan data secara asinkron, konsisten, dan transaksional, yang mengatasi beberapa kelemahan SharedPreferences |
documentfile | Melihat dokumen file. |
draganddrop | Menerima data tarik lalu lepas dari aplikasi lain atau dalam aplikasi, dan menampilkan kemampuan target operasi lepas yang konsisten. |
drawerlayout | Mengimplementasikan widget panel samping Desain Material. |
dynamicanimation | Membuat animasi yang halus dengan API animasi berbasis fisika. |
emoji | Menampilkan emoji di perangkat saat ini dan yang lebih lama. |
emoji2 | Menampilkan emoji di perangkat saat ini dan yang lebih lama. |
enterprise | Membuat aplikasi yang siap digunakan perusahaan. |
exifinterface | Membaca dan menulis tag EXIF file gambar. |
games | Menggunakan Android Game SDK secara native di aplikasi Anda untuk melakukan tugas game yang kompleks, seperti Frame Pacing. |
glance | Membuat tata letak untuk platform jarak jauh menggunakan API khas Jetpack Compose. |
graphics | Memanfaatkan fasilitas grafis di beberapa rilis platform Android |
gridlayout | Mengimplementasikan tata letak berbentuk petak. |
health | Membuat aplikasi kesehatan berperforma tinggi dengan cara yang tidak bergantung pada platform. |
health.connect | Memungkinkan developer membaca atau menulis catatan kesehatan dan kebugaran pengguna. |
heifwriter | Mengenkode gambar atau kumpulan gambar dalam format HEIF menggunakan codec yang tersedia di perangkat Android. |
ink | Menginspirasi aplikasi pena terbaik di kelasnya. Menurunkan hambatan masuk developer untuk pengalaman menulis indah dan berperforma tinggi. |
input | Mengurangi latensi interaksi input dengan memprediksi MotionEvents di masa mendatang |
interpolator | Menggunakan interpolator animasi di platform yang lebih lama. |
javascriptengine | Mengaktifkan aplikasi Android Anda untuk mengevaluasi JavaScript. |
jetifier | Alat mandiri untuk memigrasikan dependensi library dari support library yang tidak digunakan lagi ke dependensi AndroidX yang setara. |
leanback | Gunakan Compose untuk TV, bukan artefak ini. |
legacy | Artefak ini beserta class-nya tidak digunakan lagi. Mulai Android 8, pembatasan pemeriksaan latar belakang membuat class ini tidak lagi berguna. |
lint | Pemeriksaan lint untuk memverifikasi penggunaan API Gradle |
loader | Memuat data untuk UI Anda yang tetap bertahan saat terjadi perubahan konfigurasi. |
localbroadcastmanager | Artefak ini beserta class-nya tidak digunakan lagi. Gunakan LiveData atau streaming reaktif saja. |
media | Membagikan konten dan kontrol media ke aplikasi lain. Digantikan oleh media3. |
media2 | Membagikan konten dan kontrol media ke aplikasi lain. |
media3 * | Mendukung library untuk kasus penggunaan media. |
mediarouter | Mengaktifkan tampilan dan pemutaran media pada perangkat penerima jarak jauh menggunakan antarmuka pengguna umum. |
multidex | Men-deploy aplikasi dengan beberapa file dex di perangkat sebelum Android 5. |
metrics | Melacak dan melaporkan berbagai metrik runtime untuk aplikasi Anda |
palette | Mengekstrak palet warna representatif dari gambar. |
Library untuk menambahkan kemampuan melihat PDF di dalam aplikasi. | |
percentlayout | Artefak ini beserta class-nya tidak digunakan lagi. Sebagai gantinya, gunakan ConstraintLayout dan tata letak terkait. |
performa | Memberikan anotasi sumber untuk pengoptimalan performa. |
preference | Membuat layar setelan yang interaktif tanpa perlu berinteraksi dengan penyimpanan perangkat atau mengelola UI. |
Mencetak foto, dokumen, serta gambar dan visual lainnya dari aplikasi Anda. | |
privacysandbox.activity | TODO |
privacysandbox.ads | Library ini memungkinkan integrasi dengan Privacy Preserving API, yang merupakan bagian dari Privacy Sandbox di Android. |
privacysandbox.plugins | Plugin Gradle Library Sdk Android Privacy Sandbox |
privacysandbox.sdkruntime | Library ini menyediakan komponen untuk konsumen yang mengetahui SdkRuntime |
privacysandbox.tools | Library untuk menggunakan fungsi Privacy Sandbox di Android |
privacysandbox.ui | TODO |
profileinstaller | Memungkinkan library mengisi otomatis rekaman aktivitas kompilasi terlebih dahulu sebelum dibaca oleh ART. |
recommendation | Mempromosikan konten ke layar utama Peluncur Android TV. |
recyclerview | Menampilkan set data dalam jumlah besar pada UI sambil meminimalkan penggunaan memori. |
remotecallback | Membuat wrapper yang memudahkan developer menyediakan PendingIntent. |
resourceinspection | Menampilkan atribut tampilan kustom di Live Layout Inspector Android Studio. |
savedstate | Menuliskan komponen yang dapat dicocokkan yang menyimpan status UI saat proses berhenti, dan memulihkannya saat proses dimulai ulang. |
security | Mengelola kunci dengan aman serta mengenkripsi file dan sharedpreferences. |
sharetarget | Memberikan kompatibilitas mundur untuk menggunakan pintasan sebagai target berbagi langsung. |
slice | Menampilkan elemen UI dengan template di luar aplikasi Anda. |
slidingpanelayout | Mengimplementasikan pola UI panel geser. |
startup | Mengimplementasikan cara yang praktis dan berperforma tinggi untuk melakukan inisialisasi komponen saat aplikasi dimulai. |
sqlite | Berfungsi dengan database SQLite lokal. Jika memungkinkan, gunakan Room. |
swiperefreshlayout | Mengimplementasikan pola UI geser untuk refresh. |
test.uiautomator | Framework untuk pengujian UI fungsional lintas aplikasi |
textclassifier | Mengidentifikasi percakapan, link, pilihan, dan konstruksi lain yang serupa dalam teks. |
tracing | Menulis peristiwa rekaman aktivitas ke buffering pelacakan sistem. |
transition | Menganimasikan gerakan di UI dengan tata letak awal dan akhir. |
tv | Menyediakan fungsi Compose dan Desain material kepada developer agar dapat menulis aplikasi untuk TV |
tvprovider | Menyediakan saluran Android TV. |
xr.arcore | Hadirkan konten digital ke dunia nyata dengan kemampuan persepsi. |
xr.compose | Buat tata letak UI spasial secara deklaratif yang memanfaatkan kemampuan spasial Android XR. |
xr.compose.material3 | Mem-build dengan komponen dan tata letak Material yang beradaptasi untuk XR |
xr.runtime | Mulai sesi AR atau 3D kustom Anda dengan runtime native kami. |
xr.scenecore | Buat dan manipulasi grafik tampilan Android XR dengan konten 3D. |
vectordrawable | Merender grafik vektor. |
versionedparcelable | Memberikan format serialisasi biner yang stabil dan ringkas yang dapat diteruskan di seluruh proses atau dipertahankan dengan aman. |
viewpager | Menampilkan View atau Fragment dalam format yang dapat digeser. Jika memungkinkan, gunakan viewpager2. |
viewpager2 | Menampilkan View atau Fragment dalam format yang dapat digeser. |
wear | Membuat aplikasi untuk smartwatch Wear OS by Google. |
wear.compose | Menulis aplikasi Jetpack Compose untuk perangkat Wearable dengan memberikan fungsi guna mendukung perangkat, ukuran, bentuk, dan gestur navigasi khusus perangkat wearable. |
wear.protolayout | Library ini memungkinkan penentuan serangkaian tata letak UI dan ekspresi non-UI dirender/dievaluasi pada platform jarak jauh. |
wear.tiles | Membuat aplikasi untuk smartwatch Wear OS by Google. |
wear.watchface | Membuat aplikasi untuk smartwatch Wear OS by Google. |
webkit | Berfungsi dengan WebView API modern di Android 5 dan versi yang lebih baru. |
window | Membantu mendukung berbagai faktor bentuk perangkat seperti perangkat foldable. |
window.extensions.core | Core API untuk Ekstensi Library Window Manager |
Mengapa menggunakan Android Jetpack?
Mengikuti praktik terbaik
Menghapus kode boilerplate
Mengurangi fragmentasi
Berita dan video
Compose runtime and performance - Android Developers Backstage
Updated 4 Maret 2025
In this episode, Tor and Romain chat with Leland and Chuck from the Compose team about performance -- recent optimizations, upcoming optimizations, and challenges. Listen to the podcast → https://goo.gle/3QKVy8k Catch videos on YouTube →
SoundCloud uses Jetpack Glance to build Liked Tracks widget in just 2 weeks
Updated 4 Maret 2025
To make it even easier for users to listen on Android, developers at SoundCloud — an artist-first music platform — turned to Jetpack Glance to create a Liked Tracks widget for their highly-rated app, which boasts 4.6 stars and over 100 million
Meet the Android Studio Team: A Conversation with Android Developer UX Manager, Dan Dole
Updated 27 Februari 2025
Welcome to "Meet the Android Studio Team"! In this blog series, we introduce you to the passionate people who create the Android development tools you use every day. Get to know the engineers, designers, product managers, and more who work hard to
Meet the Android Studio Team: A Conversation with Engineering Director, Tor Norbye
Updated 20 Februari 2025
Welcome to "Meet the Android Studio Team," our new ongoing blog series. Each week, we'll introduce you to the talented people behind Android Studio. Get to know the engineers, designers, product managers, and more who create the best possible
Compose for TV
Updated 19 Februari 2025
Compose for TV is the modern approach for building Android TV user interfaces. Compose for TV unlocks all the benefits of Android's Jetpack Compose for your TV apps, making building beautiful and functional UIs for your app much easier. Jetcaster
Meet the Android Studio Team: A Conversation with Staff Developer Programs Engineer, Trevor Johns
Updated 12 Februari 2025
Android Studio isn't just code and algorithms – it's built by real people with fascinating stories. Our "Meet the Android Studio Team" series gives you a glimpse into the lives and passions of the talented individuals who craft the tools you use
Meet the Android Studio Team: A Conversation with Director of Product Management, Jamal Eason
Updated 6 Februari 2025
Dive into the world of Android Studio and meet the masterminds behind your favorite development tools! In our recurring blog series, "Meet the Android Studio Team," we'll introduce you to the brilliant engineers, designers, product managers, and more
Testing
Updated 30 Januari 2025
Keep your UI delightful by testing it! Previews allow quickly verifying components during development, which can be automated with the preview screenshot testing Gradle plugin to create visual regression tests. Behavior tests can use
Meet the Android Studio Team: A Conversation with Product Manager, Paris Hsu
Updated 30 Januari 2025
Welcome to "Meet the Android Studio Team"; a short blog series where we pull back the curtain and introduce you to the passionate people who build your favorite Android development tools. Get to know the talented minds – engineers, designers, product
Apps adopt Transformer to support more reliable and performant media editing use cases
Updated 10 Januari 2025
The Jetpack Media3 library enables Android apps to build high quality media apps. As part of the Media3 library, the Transformer module aims to provide easy to use, reliable, and performant APIs for transcoding and editing media. For example, apps
Clipping and masking
Updated 27 November 2024
Clipping or masking parts of your content is a way to create delightful UI effects, and is a common need when working with custom UI components. Clipping is the process of removing parts of your content based on a set path or shape. Whereas masking
Graphics layers
Updated 15 November 2024
In this episode, learn all about Graphics Layers in Compose and how you can use the APIs to composite graphics layers together to create interesting visual effects. This episode covers how to use BlendModes to blend between two layers, and how to set
AnchoredDraggable #shorts
Updated 7 November 2024
In this episode, we cover Compose AnchoredDraggable - an interactive UI element that allows users to drag and swipe it, while maintaining an anchor to its original position. Learn more → https://goo.gle/compose-anchored-draggable Watch more Compose
AnchoredDraggable
Updated 30 Oktober 2024
In this episode, we cover Compose AnchoredDraggable, which is a Jetpack Compose API that lets you build components that can be dragged between anchor points and settles an anchor point at the end of the gesture. AnchoredDraggable is often used to
CameraX update makes dual concurrent camera even easier
Updated 16 Oktober 2024
CameraX, Android's Jetpack camera library, is getting an exciting update to its Dual Concurrent Camera feature, making it even easier to integrate this feature into your app. This feature allows you to stream from 2 different cameras at the same
Here's what happening in our latest Spotlight Week: Adaptive Android Apps
Updated 14 Oktober 2024
With Android powering a diverse range of devices, users expect a seamless and optimized experience across their foldables, tablets, ChromeOS, and even cars. To meet these expectations, developers need to build their apps with multiple screen sizes
Introducing Ink API, a new Jetpack library for stylus apps
Updated 8 Oktober 2024
With stylus input, Android apps on phones, foldables, tablets, and Chromebooks become even more powerful tools for productivity and creativity. While there's already a lot to think about when designing for large screens – see our full guidance and
Room renovations
Updated 24 September 2024
In this video, Elif from the Android Toolkit & Jetpack Team will be talking about Room! This past year was a BIG one for Room, and we are excited to share all the renovations we completed as we entered the Kotlin Multiplatform world.
Flow layouts
Updated 11 September 2024
FlowRow and FlowColumn are similar to Row and Column layouts, however the items will flow into the next row or column when there is no more space in the area. In this video, Flow layouts are covered along with how to use them and tricks for using
Navigation Compose meet Type Safety #shorts
Updated 10 September 2024
In this video, Clara Fok introduces the new Type Safety feature for Navigation Compose. Watch more Android Conference Talks → https://goo.gle/ConferenceTalks #Featured #AndroidDev #JetpackCompose Speakers: Clara Fok Products Mentioned: Jetpack
Navigation Compose meet Type Safety
Updated 10 September 2024
In this video, Clara Fok will talk about the new Type Safety feature for Navigation Compose and the new type-safe APIs. Chapters: 0:00 - Introduction 1:43 - Type Safety 4:28 - Building NavGraphs 5:27 - Navigate with arguments 6:32 - Retrieve
Jetpack Compose APIs for building adaptive layouts using Material guidance now stable
Updated 9 September 2024
The 1.0 stable version of the Compose adaptive APIs with Material guidance is out, ready to be used in production. The library helps you build adaptive layouts that provide an optimized user experience on any window size. The team at SAP Mobile Start
SAP integrated NavigationSuiteScaffold in just 5 minutes to create adaptive navigation UI
Updated 9 September 2024
SAP Mobile Start is an app that centralizes access to SAP's mobile business suite, a hub for users to keep track of their companies’ processes and data so they can efficiently manage their daily to-dos while on the move. Recently, SAP Mobile Start
Shaders
Updated 29 Agustus 2024
In addition to Brushes, in Compose there is another delightful mechanism for painting your pixels and rendering graphics on screen, called Shaders. In this episode, we dive into the details of using shaders in Jetpack Compose, combined with render
Learn all about creating Shared elements in Jetpack Compose
Updated 23 Juli 2024
🤔 Want to learn all about shared elements in Jetpack Compose? Take a look at our latest video on the topic - tap the link to find out more 🧞 Watch more Android Conference Talks → https://goo.gle/ConferenceTalks #Featured #AndroidDev #JetpackCompose
Advanced layout animations in Compose (Shared elements)
Updated 23 Juli 2024
Compose is the recommended modern UI toolkit for Android that makes it easy to create beautiful and delightful user interfaces. A new powerful feature of Compose is the Lookahead layout system. Using this new layouting mechanism, we can create
Top 3 Updates with Compose across Form Factors at Google I/O '24
Updated 11 Juni 2024
Google I/O 2024 was filled with lots of updates and announcements around helping you be more productive as a developer. Here are the top 3 announcements around Jetpack Compose and Form Factors from Google I/O 2024: The June 2024 release of Jetpack
A Developer’s Roadmap to Predictive Back (Views)
Updated 24 Mei 2024
Before you read on, this topic is scoped to Views. Predictive Back with Compose is easier to implement and not included in this blog post. To learn how to implement Compose with Predictive Back, see the Add predictive back animations codelab and the
Everything you need to know about Google TV and Android TV OS
Updated 15 Mei 2024
Over the past year, we’ve seen significant growth of Android TV OS, reaching 220 million monthly active devices with a 47% year-over-year increase. This incredible engagement would not be possible without our dedicated developer community. A massive
Google I/O 2024: What’s new in Android Development Tools
Updated 14 Mei 2024
At Google I/O 2024, we announced an exciting new set of features and tools aimed at making Android development faster and easier. We also shared updates to Android Studio that will help you leverage AI and make it easier for you to build high quality