Library Persistensi Room Bagian dari Android Jetpack.
Library persistensi Room memberikan lapisan abstraksi pada SQLite untuk memungkinkan akses database yang lebih stabil sambil memanfaatkan kemampuan penuh SQLite.
Library ini membantu Anda membuat cache data aplikasi pada perangkat yang menjalankan aplikasi Anda. Cache ini, yang berfungsi sebagai satu-satunya sumber ketepatan aplikasi, memungkinkan pengguna melihat salinan informasi utama yang konsisten dalam aplikasi Anda, terlepas apakah pengguna memiliki koneksi internet atau tidak.
Untuk menggunakan Room di aplikasi Anda, tambahkan dependensi berikut ke file build.gradle
aplikasi:
Groovy
dependencies { def room_version = "2.5.0" implementation "androidx.room:room-runtime:$room_version" annotationProcessor "androidx.room:room-compiler:$room_version" // To use Kotlin annotation processing tool (kapt) kapt "androidx.room:room-compiler:$room_version" // To use Kotlin Symbol Processing (KSP) ksp "androidx.room:room-compiler:$room_version" // optional - RxJava2 support for Room implementation "androidx.room:room-rxjava2:$room_version" // optional - RxJava3 support for Room implementation "androidx.room:room-rxjava3:$room_version" // optional - Guava support for Room, including Optional and ListenableFuture implementation "androidx.room:room-guava:$room_version" // optional - Test helpers testImplementation "androidx.room:room-testing:$room_version" // optional - Paging 3 Integration implementation "androidx.room:room-paging:$room_version" }
Kotlin
dependencies { val room_version = "2.5.0" implementation("androidx.room:room-runtime:$room_version") annotationProcessor("androidx.room:room-compiler:$room_version") // To use Kotlin annotation processing tool (kapt) kapt("androidx.room:room-compiler:$room_version") // To use Kotlin Symbol Processing (KSP) ksp("androidx.room:room-compiler:$room_version") // optional - Kotlin Extensions and Coroutines support for Room implementation("androidx.room:room-ktx:$room_version") // optional - RxJava2 support for Room implementation("androidx.room:room-rxjava2:$room_version") // optional - RxJava3 support for Room implementation("androidx.room:room-rxjava3:$room_version") // optional - Guava support for Room, including Optional and ListenableFuture implementation("androidx.room:room-guava:$room_version") // optional - Test helpers testImplementation("androidx.room:room-testing:$room_version") // optional - Paging 3 Integration implementation("androidx.room:room-paging:$room_version") }
Dokumentasi lebih lanjut
Untuk panduan penerapan kemampuan Room ke solusi persistensi penyimpanan data aplikasi, lihat panduan pelatihan Room.
Referensi lainnya
Untuk mempelajari Room lebih lanjut, lihat referensi tambahan berikut.
Contoh
- Sunflower, yakni aplikasi berkebun yang mengilustrasikan praktik terbaik pengembangan Android dengan Android Jetpack.
- Contoh migrasi Room
- Contoh Room & RxJava (Java) (Kotlin)