This repository includes Kotlin sample applications I've created based on latest Android guidelines available in the following references:
- Developing Android apps with Kotlin series.
- Advanced Android apps with Kotlin series.
- Associate Android developer materials.
I am using these apps as reference to learn more about Android latest features and to prepare for Android associate developer certificate.
This is an overview of the applications and the development capabilities and features I've obtained that each application represents:
All applications under /Udacity folder:
- DiceRoller: the basic of Android layouts and actions.
- Aboutme: how to use Android data binding features.
- ColorMyviews: build responsive views with constraint layout.
- TriviaApp: usage of navigation graphs, navigation drawer and fragments.
- DessertPusher: handling acitivty/ fragment lifecycle and observers.
- GuessIt: a word guessing game to learn about application archeticture, viewModel and liveData.
- SleepQualityTracker: room database, recyclerview, coroutines and basic unit testing.
- GridLayout: room database and grid layout.
- MarsRealEstate: viewModel & liveData with retrofit, glide and moshi in Kotlin.!
- OfflineCaching: room database and retrofit2 with workManager using MVVM architecture.
- DesignForEveryone: themes, styles, overlays, attributes, tint, accessbility, RTL and more.
This section to show the topics of the Kotlin Android associate developer exam and related reference applications in this repository.
Topic | Application | Filename |
---|---|---|
Snackbar | SleepQualityTracker | SleepTrackerFragment |
Snackbar | Theme | GdgListFragment |
AndroidX | DiceRoller | - |
Android KTX | reference | - |
Android KTX (Navigation) | AndroidTrivia | MainActivity, navigation_main |
Android KTX (Room) | GridSleepQualityTracker | - |
Android KTX (WorkManager) | OfflineCaching | RefreshDataWork, OfflineCachingApplication (setupPeriodicWorker) |
Topic | Application | Filename |
---|---|---|
ConstraintLayout | ColorMyviews | activity_main, build.gradle |
RecyclerView list | SleepQualityTracker, GridSleepQualityTracker |
SleepNightAdapter, SleepTrackerFragment, fragment_sleep_tracker |
Navigation drawer | AndroidTrivia | MainActivity, activity_main, navdrawer_menu |
Start activity | GridSleepQualityTracker | SleepTrackerFragment |
Share Intent | AndroidTrivia | GameWonFragment (createShareIntent) |
Themes | DesignForEveryone | - |
Lifecycles | DessertPusher | MainActivity |
Menu | AndroidTrivia | winner_menu, GameWonFragment |
Topic | Application | Filename | Function |
---|---|---|---|
viewModelScope | TodoTester | TasksViewModel | completeTask, clearCompletedTasks |
Room database and liveview | SleepQualityTracker, GridSleepQualityTracker |
SleepTrackerViewModel (allNights) | |
Repository | OfflineCaching | VideosRepository, VideoDao, Network |
Topic | Reference |
---|---|
Debugging | https://developer.android.com/studio/debug/ |
Android logs | https://developer.android.com/studio/debug/am-logcat |