All 60 tasks, level by level

The real graded Android App Development tasks the portal assigns, grouped into three levels.

The portal assigns these Android App Development tasks. Finish Level 1 before Level 2 and Level 2 before Level 3. Your mentor may mark some tasks as required for the certificate.

Level 1: Foundations (24 tasks)

TaskWhat to do
Set up Android StudioInstall Android Studio, create an emulator and run a Hello World app. Commit the project to a repo named android-internship.
Kotlin basicsWrite Kotlin examples for variables, null safety, data classes, when, collections and lambdas.
Project structureExplain the manifest, Gradle files, resources and the main activity of a new project.
First Compose screenBuild a profile screen with Jetpack Compose using Column, Row, Image, Text and Button.
State in ComposeBuild a counter and a text field form that react to state with remember and mutableStateOf.
ListsShow 100 items in a LazyColumn with a click action on each item.
NavigationAdd three screens with Navigation Compose and pass an argument between two of them.
Material Design 3Apply a Material 3 theme with colours, typography and dark mode support.
Activity lifecycleLog every lifecycle callback, rotate the device and explain what happens to state.
Resources and localisationMove every string to strings.xml and add Tamil or Hindi translations.
Toasts, snackbars and dialogsShow feedback to the user in three ways and explain when to use each.
Build an APKBuild a debug APK, install it on a real phone and share a screenshot.
Kotlin coroutines basicsWrite examples of launch, async, delay and structured concurrency.
Kotlin collections practiceSolve 10 problems with Kotlin collection functions (map, filter, groupBy, fold).
Custom Compose componentsBuild reusable components (a rating bar, a chip group) with parameters.
Compose previewsAdd previews with different themes, font sizes and sample data.
Forms and keyboardBuild a form with proper keyboard types, IME actions and validation.
Bottom navigationAdd a bottom navigation bar with three destinations that keep their state.
App icon and splashCreate an adaptive app icon and use the SplashScreen API.
IntentsShare text, open a web page and dial a number using intents.
Logging and LogcatUse Logcat filters to debug your app and remove logs from release builds.
Gradle version catalogsMove dependencies to a libs.versions.toml version catalog.
Edge-to-edge UIMake your app draw edge-to-edge with correct insets.
Animations in ComposeAdd animated visibility, content size and a simple transition.

Level 2: Building real features (20 tasks)

TaskWhat to do
MVVM with ViewModelRefactor your app to use a ViewModel with StateFlow and explain why state survives rotation.
Networking with RetrofitLoad data from a public API with Retrofit and coroutines, with loading and error states.
ImagesLoad remote images with Coil, with a placeholder and an error image.
Local database with RoomSave favourites in a Room database and show them on a separate screen.
DataStore preferencesStore user settings (theme, language) with DataStore.
Dependency injectionAdd Hilt and inject your repository and API service.
PermissionsRequest camera or location permission correctly and handle denial gracefully.
Background workSchedule a periodic sync with WorkManager and show a notification when it finishes.
Unit testsWrite unit tests for your ViewModel and repository with fake data sources.
Firebase integrationAdd Firebase Authentication (email or Google sign-in) to your app.
Paging 3Load a long API list with Paging 3 and show loading and error footers.
Search with FlowBuild search using Flow operators (debounce, distinctUntilChanged, flatMapLatest).
Camera and imagesTake a photo with CameraX or the system picker and display it.
LocationShow the user's location and distance to a point with fused location.
MapsShow places on a map with markers using Google Maps Compose.
Clean architecture layersSplit your app into data, domain and UI layers with use cases.
Multi-module projectSplit features into Gradle modules and explain the benefits.
Error handlingShow friendly messages for network, server and empty states everywhere.
Analytics and crash reportingAdd Firebase Analytics events and Crashlytics.
Deep linksOpen a specific screen from a link with Navigation deep links.

Level 3: Professional work and capstone (16 tasks)

TaskWhat to do
Offline-first appMake your app show cached data offline and sync with the API when back online.
UI testsWrite Compose UI tests for the main screens and run them on an emulator.
PerformanceProfile your app with Android Studio's profiler, fix one slow screen or memory leak, and record the result.
AccessibilityAdd content descriptions, larger touch targets and TalkBack support, and test with TalkBack on.
Push notificationsSend push notifications with Firebase Cloud Messaging and open the right screen on tap.
Release buildCreate a signed release AAB with R8 shrinking and explain what each step does.
CI for AndroidAdd GitHub Actions that build the app and run tests on every push.
Capstone: published-quality appShip a complete app (auth, API, offline storage, notifications, tests) ready for the Play Store, with screenshots and a demo video.
Widgets with GlanceBuild a home screen widget with Jetpack Glance.
Foreground serviceRun a timer or download as a foreground service with a notification.
SecurityStore a token with EncryptedSharedPreferences or DataStore with encryption and add network security config.
Baseline profilesAdd a baseline profile and measure startup time improvement.
Play Store listingPrepare a store listing: screenshots, description, privacy policy and content rating.
In-app updates and reviewsAdd Play in-app update prompts and in-app review requests.
Tablet and foldable supportMake your layout adapt to tablets using window size classes.
Capstone 2: production app for a real needBuild an app that solves a real local need (with a real user), released to internal testing on the Play Console or as a signed APK, with feedback documented.
โ† Tools and first-week setupSubmitting tasks and earning your certificate โ†’