Ch1: Create a new project, add two TextViews and a Button that changes text.
Ch2: Install Android Studio, create a project, run on emulator.
Ch3: Build an MVVM app with ViewModel, LiveData, RecyclerView, Repository.
Ch4: Two Activities with Intent extras and Share button.
Ch5: Login screen layout with ConstraintLayout and Material Design.
Ch6: Contact list with RecyclerView, FAB, and Snackbar.
Ch7: Drawing app with custom View, touch, SeekBar, and swipe detection.
Ch8: Themed app with custom colors, vector icons, fonts, and Spanish localization.
Ch9: Notification with action, location updates, and confirmation dialog.
Ch10: Podcast app with Foreground Service and WorkManager for periodic sync.
Ch11: Notes app with Room database, RecyclerView, and DataStore.
Ch12: Posts app with Retrofit, pull-to-refresh, offline caching with Room.
Ch13: Photo editor with CameraX, bitmap filters, and Lottie animation.
Ch14: Step counter fitness app with notifications and light sensor.
Ch15: Unit tests with MockK and UI tests with Espresso.
Ch16: Prepare app bundle with ProGuard and test with bundletool.
Quiz
What are the four main components of an Android app?
What is the difference between onStart() and onResume()?
How does ConstraintLayout improve performance over nested layouts?
What is the purpose of a ViewModel in MVVM?
What is the difference between a Service and a BroadcastReceiver?
When should you use WorkManager vs a foreground service?
How does Room help with SQLite database management?
What is the difference between an App Bundle and an APK?
What is the purpose of ProGuard/R8?
What are the different test types in Android and when should you use each?
Interview Preparation
Common Android Interview Questions
Explain the Activity lifecycle in detail.
What is the difference between Serializable and Parcelable?
How does the Android permission system work?
Explain the Repository pattern and its benefits.
What is dependency injection and why use Hilt/Dagger?
How do you handle configuration changes (screen rotation)?
What is the difference between match_parent and wrap_content?
How does RecyclerView recycle views?
What is the purpose of LiveData vs StateFlow?
How do you handle memory leaks in Android?
Project Ideas
Beginner: Stopwatch app with start/stop/reset and lap recording
Beginner: Currency converter app with live exchange rates
Intermediate: Recipe app with Room, Retrofit, and image loading
Intermediate: Fitness tracker with step counter, maps, and charts
Advanced: Chat app with Firebase Auth, Firestore, and push notifications
Advanced: Expense tracker with Room, WorkManager, and data export
Study Plan
Week
Topics
Goal
1
Ch1-4
Understand Android fundamentals and components
2
Ch5-8
Master UI design and resources
3
Ch9-12
Networking, storage, and services
4
Ch13-16
Multimedia, sensors, testing, deployment
5
Ch17-18
Build a complete app and prepare for interview
Certification Path
Google Associate Android Developer (AAD): Official Google certification
Meta Android Developer Certificate: Meta's Android development program
Complete 3 portfolio apps and publish one to Google Play
Contribute to open-source Android projects
Final Project: Build a "Expense Tracker" Android app with Room database, Retrofit for currency conversion, WorkManager for monthly backup, MVVM architecture, Hilt DI, push notifications for spending alerts, a custom view for pie charts, and at least 80% test coverage. Publish it to Google Play as an internal test.