Skip to content
tezvyn:

Android & Kotlin

Jetpack Compose, Android Studio, Kotlin, Material You

68 bites

Test yourself: Top 30 easy Android & Kotlin interview questionsMultiple choice, with the correct answer and why it is correct on every question. Free, no sign-in.

Easy interview questions in Android & Kotlin, page 2

Project-level vs. module-level build.gradle files
easy2 min read

Project-level vs. module-level build.gradle files

This tests your grasp of Gradle's project/module structure. A good answer defines the project-level file for global settings (repositories, plugins) and the module-level for specifics (SDK versions, dependencies). A red flag is confusing their roles.

What is the res directory and how do you use orientation qualifiers?
easy2 min read

What is the res directory and how do you use orientation qualifiers?

Res/ holds non-code assets; create layout-port/ and layout-land/ with identical XML filenames for automatic framework selection.

What is the `res/` directory and how do you use resource qualifiers?
easy2 min read

What is the `res/` directory and how do you use resource qualifiers?

This tests your grasp of Android's resource system. Explain that res/ separates assets from code and that qualifiers (e.g., layout-land) let the OS pick the right layout. A red flag is checking orientation manually in code instead of using this system.

Explain the res/ directory and resource qualifiers for layouts
easy2 min read

Explain the res/ directory and resource qualifiers for layouts

Tests your grasp of Android's core resource system. A good answer defines res/ for non-code assets, explains how qualifiers like layout-land match device state, and provides a concrete example.

Describe the Android Activity lifecycle and callback order
easy2 min read

Describe the Android Activity lifecycle and callback order

Away calls onPause then onStop; back calls onRestart, onStart, onResume; onCreate only runs after destruction.

Trace an Activity's lifecycle when a user navigates away and returns
easy2 min read

Trace an Activity's lifecycle when a user navigates away and returns

This tests your understanding of resource management and state preservation, not just memorization. A great answer traces onPause -> onStop when leaving, and onRestart -> onStart -> onResume when returning, explaining what happens in each.

Describe the Android Activity lifecycle when navigating away and back
easy2 min read

Describe the Android Activity lifecycle when navigating away and back

Tests understanding of resource management via lifecycle callbacks. A good answer traces onPause -> onStop -> onRestart -> onStart -> onResume, explaining what work happens in each.

Activity rotation: what happens to EditText text?
easy2 min read

Activity rotation: what happens to EditText text?

Rotation destroys and recreates the Activity; EditText auto-saves text if it has an ID, else onSaveInstanceState or SavedStateHandle.

What happens to an Activity and its text on screen rotation?
easy3 min read

What happens to an Activity and its text on screen rotation?

Tests understanding of configuration changes and state preservation. A great answer explains the Activity is destroyed and recreated, EditText state is often saved automatically, but the robust solution is using a ViewModel with SavedStateHandle.

How do you save UI state during screen rotation?
easy2 min read

How do you save UI state during screen rotation?

Tests your grasp of the Activity lifecycle and state restoration. A great answer explains the destroy/recreate cycle, notes that EditText handles its own state via its ID, and contrasts the modern ViewModel + SavedStateHandle with the older…

What is the difference between a started service and a bound service?
easy2 min read

What is the difference between a started service and a bound service?

Started services run until stopped via startService with no caller interface; bound services expose an IBinder and destroy when all clients unbind.

Started vs. Bound Services: Differences and Use Cases
easy2 min read

Started vs. Bound Services: Differences and Use Cases

Tests Android component lifecycle and IPC knowledge. A good answer defines lifecycle control (start vs. bind), communication (one-way vs. two-way IBinder), and gives clear use cases. A red flag is assuming services run on a background thread by default.

Started vs. Bound Services: Differences and Use Cases
easy2 min read

Started vs. Bound Services: Differences and Use Cases

Tests your grasp of Android component lifecycles. A strong answer defines each by its lifecycle control (who starts/stops it) and communication pattern (fire-and-forget vs. client-server), then gives distinct use cases.

Explain the difference between LinearLayout, RelativeLayout, and FrameLayout
easy2 min read

Explain the difference between LinearLayout, RelativeLayout, and FrameLayout

Understanding of ViewGroup measurement and simplicity versus flexibility tradeoffs. LinearLayout for 1D lists, RelativeLayout for complex sibling rules, FrameLayout for single-child or overlap.

LinearLayout vs. RelativeLayout vs. FrameLayout
easy2 min read

LinearLayout vs. RelativeLayout vs. FrameLayout

This tests your knowledge of fundamental View layouts and performance trade-offs. Define LinearLayout (single axis), RelativeLayout (relative positioning), and FrameLayout (stacking), giving a clear use case for each.

LinearLayout vs. RelativeLayout vs. FrameLayout: Explain and give use cases
easy2 min read

LinearLayout vs. RelativeLayout vs. FrameLayout: Explain and give use cases

Tests your grasp of classic Android layouts and performance trade-offs. A good answer defines each, gives a clear use case, and mentions layout_weight. A red flag is proposing nested LinearLayouts for complex UIs, ignoring performance.

What is remember in Compose and how do you use mutableStateOf?
easy2 min read

What is remember in Compose and how do you use mutableStateOf?

This tests state survival across recompositions. Good answers say remember caches values across recompositions, pairs with mutableStateOf for observable state, and shows a counter. A red flag is mutableStateOf without remember, state resets per recomposition.

What is the purpose of `remember` in Jetpack Compose?
easy2 min read

What is the purpose of `remember` in Jetpack Compose?

This tests your grasp of Compose's recomposition lifecycle. A good answer explains remember caches an object across recompositions, preventing state loss. It's used with mutableStateOf to hold the same state instance.

What is the purpose of the `remember` function in Compose?
easy2 min read

What is the purpose of the `remember` function in Compose?

This tests your grasp of recomposition. Explain that remember stores an object in the composition tree, preventing it from being re-initialized on every render. A red flag is confusing it with rememberSaveable, which survives configuration changes.

Arrange UI elements vertically or horizontally in Jetpack Compose
easy2 min read

Arrange UI elements vertically or horizontally in Jetpack Compose

Tests declarative layout fundamentals. Good answers name Column and Row, explain Modifier as an ordered chain of decoration and layout behavior, and note order changes semantics. Red flag: calling Modifier "just styling" or confusing it with LinearLayout.

We are hiring for this. Every open role lists the topics its interview covers, so you can prepare for the real thing rather than guessing.

See open roles