1 |
Foundation & Tools |
- Kotlin, Java
- Android Studio
- Git & GitHub/GitLab
- Gradle Build System
|
Set up a "Hello World" Android project and push it to a Git repository. |
2 |
Core Android Components |
- Activities & Fragments
- Lifecycles
- Intents & Services
- AndroidManifest.xml
|
Create an app with two activities that can pass data between each other using Intents. |
3 |
Building the User Interface (UI) |
- Jetpack Compose
- State Management
- XML Layouts & Views
- RecyclerView
|
Build a simple UI screen using both Jetpack Compose and XML to see the differences. |
4 |
App Architecture |
- MVVM
- Jetpack ViewModel
- LiveData & StateFlow
- Repository Pattern
|
Refactor a simple app to use the MVVM architecture with a ViewModel. |
5 |
Data Persistence |
- Room Database
- Jetpack DataStore
- SharedPreferences
|
Create a basic note-taking app that saves notes locally using the Room database. |
6 |
Networking |
- Retrofit & OkHttp
- JSON Serialization
- Ktor Client
|
Build an app that fetches and displays data from a public REST API using Retrofit. |
7 |
Concurrency |
- Kotlin Coroutines
- Kotlin Flow
- RxJava / RxKotlin
|
Modify the networking app to handle API calls asynchronously using Kotlin Coroutines. |
8 |
Dependency Injection |
- Hilt (Jetpack)
- Koin
- Dagger 2
|
Integrate Hilt to provide dependencies (like a Repository) to your ViewModel. |
9 |
Testing |
- Unit Tests
- Integration Tests
- UI Tests
|
Write a simple unit test for a function in your ViewModel. |
10 |
Security |
- Secure Data Storage
- Network Security
- Code Obfuscation
|
Learn to store an API key securely instead of hardcoding it. |
11 |
Distribution & CI/CD |
- App Bundles & Signing
- Google Play Console
- CI/CD
|
Generate a signed App Bundle for your application, ready for upload. |
12 |
Keep Learning |
- Official Documentation
- Performance Optimization
- Modularization
- Kotlin Multiplatform
|
Profile your app's performance using Android Studio's Profiler and identify a bottleneck. |