jetpack-navigation-ftue-sample
tivi
jetpack-navigation-ftue-sample | tivi | |
---|---|---|
6 | 28 | |
237 | 6,402 | |
- | - | |
2.5 | 9.7 | |
10 months ago | 5 days ago | |
Kotlin | Kotlin | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jetpack-navigation-ftue-sample
-
Any Modern examples of using only 1 activity, but multiple(lots of) fragments in a non trivial app
Not a complex example per say, but I did write this sample and it'd scale as it looks right now, just more packages in core and in features.
-
How to properly handle conditional navigation with dynamic starting destination whhen using navigation component?
The whole circus around login/logout is a mess in jetpack navigation. It assumes a world where your app always has a fixed starting point which imo doesn't make sense with apps where the entire content is behind auth. I recommend checking out https://github.com/Zhuinden/jetpack-navigation-ftue-sample
-
LiveData vs SharedFlow and StateFlow in MVVM and MVI Architecture
A simplified variation can be seen in this repo, a LiveData variant with Jetpack stuff can be seen in this repo, my issue with this sample is that as there is no input + debounce + filter + async data load example in it, there is no switchMap (and even for combineTuple, I can use my other helper validateBy here), and those would be key to understanding the difference in terms of expressibility and power...
-
I'm looking for a good sample codebase to review/learn from that uses MVVM, live data, compose and either dagger or hilt. Any suggestions?
I have a non-Compose "MVVM + Hilt" sample here
-
Things seem to be shockingly complex in Android dev now
See https://github.com/Zhuinden/jetpack-navigation-ftue-sample/blob/master/app/src/main/java/com/zhuinden/jetpacknavigationdaggersavedstatehandleftueexperiment/features/login/LoginViewModel.kt#L30-L41
-
Hilt alpha 0.0.3
Yes it works wonders
tivi
-
Do you have an open source (base) project using latest tech?
Look no more: https://github.com/chrisbanes/tivi
- What are some open source android projects that you can go to see Best practices or how they implemented stuff
-
What do you use for compose navigation?
It's definitely the most verbose part of our app and one of the weakest parts of the Jetpack library. We used https://github.com/chrisbanes/tivi for some inspiration on how to organize your navigation structures.
-
What's modern approach to handling Preferences (UI & Storage) in Compose?
I have considered a few variants around this route. One easy way out would be just to launch a ComponentActivity with a PreferenceFragment like what Chris Banes does in TiVi ... but if you go with PreferenceFragment(Compat) it seems you are kinda stuck with SharedPreferences. If one attempts to supply DataStore wrapped in PreferenceDataStore, it seems types get messed up (TextPreference will store as a String, even if the InputType is number, etc).
-
Modern ways to expose Retrofit network progress and errors to a ViewModel?
Thanks I think what's confusing is that UI events are recommended to be modeled as Flows, which I guess is why Tivi uses Flows for even the simplest actions, but it does a lot of very fancy things. Most repository interactions seem to have an entire class extending an Interactor (e.g.) which catches and emits errors, progress and handles timeouts and does all that crazy queuing stuff with UI "messages" Flow
-
"outdated senior" needs your advice
I would read and study nowinandroid and tivi apps.
-
Compose Navigation with multiple graphs
Check out the approach from tivi https://github.com/chrisbanes/tivi/blob/main/app/src/main/java/app/tivi/AppNavigation.kt as an idea.
- Any Clean Architecture app courses that make use of Flows completely without LiveData?
- What resources would you recommend for learning how to build Multi-Module android apps?
-
Anyone here who has bought Philipp Lackner's course for developing multi-module apps?
They probably want you to do a module split like in https://github.com/chrisbanes/tivi or https://github.com/igorwojda/android-showcase, but what they probably don't realize is that modularization is a trade-off, namely greatly increased build configuration complexity for... well, having modules.
What are some alternatives?
architecture-components-samples - Samples for Android Architecture Components.
compose-samples - Official Jetpack Compose samples.
jetflix - Movie listing app using Jetpack Compose and Tmdb api
android-mvvm-dagger-rxjava-retrofit - A sample project which demostrate use of MVVM and Dagger 2 with RxJava2 along with Retrofit
gamedge - An Android application for browsing video games and checking the latest gaming news from around the world.
CocktailApp - Cocktails Android App with Clean Architecture, MVVM , Retrofit, Coroutines, Navigation Components , Room, Dagger Hilt, Cache Strategy and Coroutines Flow
android-showcase - 💎 Android application following best practices: Kotlin, Coroutines, JetPack, Clean Architecture, Feature Modules, Tests, MVVM, DI, Static Analysis...
guide-to-kotlin - [GUIDE] This tutorial assumes all you know is Java, but you want to learn Kotlin.
fdroidclient - Android client application.