| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| android_jetpack [2024/08/05 11:59] – [Jetpack DataStore] kalaschnikow | android_jetpack [2025/11/29 11:45] (current) – [Jetpack Navigation 3] kalaschnikow |
|---|
| | ====== Android Jetpack ====== |
| |
| | |
| | [[https://developer.android.com/jetpack/|Android Jetpack]] - official site |
| | |
| | * suite of libraries to help developers |
| | * follow best practices |
| | * reduce boilerplate code |
| | * build apps consistent across different Android versions and devices |
| | * Jetpack is recommended by Google to before mentioned goals |
| | * Jetpack is a "newer version" of Support library |
| | |
| | * Jetpack libraries are published in ''androidx'' namespace |
| | |
| | [[https://blog.danlew.net/2018/11/14/the-reality-of-migrating-to-androidx/|The Reality of Migrating to AndroidX]] - tips for migration from Support Library to Android Jetpack |
| | |
| | [[https://developer.android.com/jetpack/androidx/migrate/artifact-mappings|Artifact mappings (support library to androidx)]] |
| | |
| | [[https://adambennett.dev/2020/08/disabling-jetifier/|Disabling Jetifier]] |
| | |
| | |
| | ===== Jetpack Compose ===== |
| | |
| | * [[Android Jetpack Compose]] |
| | |
| | |
| | ===== Data storage in Jetpack ===== |
| | |
| | ==== Room ==== |
| | * [[Room]] |
| | |
| | ==== Jetpack DataStore ==== |
| | |
| | Official materials from Google: |
| | |
| | * [[https://developer.android.com/codelabs/android-preferences-datastore#0|Working with Preferences DataStore]] - tutorial |
| | * [[https://developer.android.com/develop/ui/views/components/settings/use-saved-values|Use saved values]] - UI guide by Google |
| | * https://developer.android.com/topic/libraries/architecture/datastore |
| | |
| | Articles: |
| | * [[https://vtsen.hashnode.dev/simple-preferences-proto-datastore-demo-app|Simple Preferences & Proto DataStore Demo App]] |
| | * Example code: |
| | * [[https://github.com/vinchamp77/Demo_DataStore/blob/master/app/src/main/java/vtsen/hashnode/dev/datastoredemoapp/ui/screens/PrefsDataStoreScreen.kt|PrefsDataStoreScreen]] |
| | * [[https://www.netguru.com/blog/say-goodbye-to-sharedpreferences-meet-datastore|https://www.netguru.com/blog/say-goodbye-to-sharedpreferences-meet-datastore]] by Patryk Springer |
| | * [[https://medium.com/androiddevelopers/all-about-preferences-datastore-cc7995679334|All about Preferences DataStore]] by Simona Milanovic |
| | * Her example on Github: https://github.com/simona-anomis/android-datastore |
| | * [[https://www.kodeco.com/18348259-datastore-tutorial-for-android-getting-started|DataStore Tutorial For Android: Getting Started]] |
| | * [[https://proandroiddev.com/preference-datastore-the-generic-way-d26b11f1075f|Preference DataStore (The Generic Way)]] |
| | * [[https://www.folio3.com/mobile/blog/introduction-to-jetpack-datastore-alternative-to-sharedpreferences/|Introduction to Jetpack DataStore – Alternative to SharedPreferences]] by Shehroz Asif |
| | * [[https://medium.com/swlh/preferences-datastore-in-a-kotlin-way-4c4c41a906e1|Preferences DataStore a replacement for SharedPreferences!]] |
| | * [[https://blog.devgenius.io/time-to-migrate-from-shared-preferences-to-datastore-ef9e4ba352cc|Time to migrate from Shared Preferences to DataStore]] |
| | * [[https://proandroiddev.com/using-android-jetpack-datastore-with-jetpack-compose-6184338cf9c0|Using Android Jetpack Datastore in Jetpack Compose]] |
| | * [[https://proandroiddev.com/forbidden-love-of-preference-and-datastore-part-1-7770e8d98604|Forbidden Love of Preference and DataStore — Part 1]] |
| | * Alexey Leontyev considers what is needed to make PreferenceFragmentCompat work with data from DataStore |
| | |
| | |
| | Videos : |
| | * [[https://www.youtube.com/watch?v=Bm5p3_LOUYg|Preferences DataStore - Best Way Of Storing Small Data In Your App]] |
| | ===== Jetpack Navigation 3 ===== |
| | |
| | * https://developer.android.com/guide/navigation/navigation-3 |
| | * https://github.com/android/nav3-recipes/blob/main/app/src/main/java/com/example/nav3recipes/passingarguments/viewmodels/basic/BasicViewModelsActivity.kt |
| | * Short info (very useful for the start): |
| | * https://android-developers.googleblog.com/2025/05/announcing-jetpack-navigation-3-for-compose.html |
| | * https://github.com/android/nav3-recipes |
| | * also: |
| | * https://kotlinlang.org/docs/multiplatform/compose-navigation.html#retrieve-complex-data-when-navigating |
| | * https://stackoverflow.com/questions/67121433/how-to-pass-object-in-navigation-in-jetpack-compose |
| | * https://developer.android.com/develop/ui/compose/components/drawer |
| | |
| | ===== Misc ===== |
| | * [[https://www.paleblueapps.com/rockandnull/app-startup-android/|Jetpack App Startup: keep your startup logic organized]] |
| | * [[https://proandroiddev.com/understanding-viewmodel-persistence-across-configuration-changes-in-android-4dc26fa8ae59|Understanding ViewModel Persistence Across Configuration Changes in Android]] |