Skip to content
tezvyn:

Android

433 bites tagged Android — interview questions with model answers, and 60-second explainers.

React Native2 min read

Generating a signed release APK or AAB

Create a keystore, reference its credentials via gradle.properties (gitignored), wire a release signingConfig in build.gradle, then assembleRelease or bundleRelease. Android release signing.

React Native2 min read

Purpose of RCTBridgeModule and ReactContextBaseJavaModule

These declare a class as a discoverable native module, provide the JS-facing name, and let RN export methods to JavaScript. understanding the native module contract.

React Native2 min read

Android-only native module called safely from JS

Write a ReactContextBaseJavaModule with an exported method, register it in a package, then guard the JS call with Platform.OS or a null check on the module. building a platform-specific native module and guarding calls.

React Native1 min read

Android App Bundles versus Universal APKs

An AAB is an upload format; Play generates per-device APKs via dynamic delivery, shrinking download size. Play distribution format. thinking an AAB installs directly on a device like an APK.

React Native1 min read

What is Hermes and its advantages over JSC?

Hermes is an open-source engine optimized for RN, with faster startup via precompiled bytecode and lower memory use. knowledge of the JS engine powering RN. claiming Hermes JITs or always beats JSC at peak throughput.

React Native1 min read

Requesting runtime permissions on iOS and Android

Declare permissions in Info.plist and AndroidManifest, then check status and request at runtime just before use, handling granted, denied, and blocked. Permission lifecycle awareness.

React Native1 min read

Conditional logic with Platform.Version

Platform.Version is a number on Android (API level) and a string on iOS; gate features by version to use new APIs only where supported. OS-version-aware branching. comparing the iOS string version as a number.

React Native1 min read

Platform-specific file extensions

Name files Component.ios.js and Component.android.js; import without the extension and the bundler picks the right one per platform. knowledge of platform file resolution. thinking you must import the extension explicitly.

React Native1 min read

Building a native module from scratch

Write a native module class with exported methods or constants, register it via a package, then expose a typed JS wrapper. bridging JS to platform APIs.

Design Systems1 min read

Delivering one color token to three platforms

One JSON source, generated CSS variable for web, color resource XML for Android, and Swift/asset for iOS. platform-specific token output. pasting the same hex by hand into each platform.

Android & Kotlin2 min read

R8 shrinking, obfuscation, and optimization

Shrinking removes unused code/resources, obfuscation renames symbols to short opaque names, optimization inlines and simplifies; shrinking also strips unreachable code that could be exploited. what R8 does and why.

Android & Kotlin1 min read

Build a custom layout in Jetpack Compose

Use the Layout composable with a MeasurePolicy, measure each child once with constraints, then place children and report your size. understanding Compose's measure/place model.

Android & Kotlin2 min read

Android Becomes an Intelligence System: I/O 2026 Recap

Google I/O 2026 repositions Android as an intelligence system with ADK for Kotlin, Gemini Nano 4 on-device inference, and Compose-first UI, forcing teams to rethink app architecture around AI agents instead of static screens.

Android & Kotlin2 min read

Kotlin 2.4.0 Ships Stable Context Parameters and UUID API

Kotlin 2.4.0 ships stable context parameters, a built-in UUID API, and Java 26 support. Context parameters replace manual dependency threading through call chains.

Android & Kotlin2 min read

Android CLI 1.0 Stable Unlocks Headless CI

Android CLI 1.0 went stable at I/O, exposing project scaffolding and device management commands that run without Android Studio. The release finally lets teams script full build pipelines on headless agents and remote dev boxes.

Android & Kotlin1 min read

Unify Android EventBus and RxJava with Kotlin Flow

Mixing EventBus, RxJava, and Kotlin Flow in Android codebases creates memory leaks and GC pressure from stream wrapping. Operator translation and lifecycle mismatches drive engineering debt.

Android & Kotlin1 min read

I/O 2026 Standardizes AI Server-Driven UI for Android

I/O 2026 made A2UI, Remote Compose, and AppFunctions first-class Android primitives, validating AI server-driven UIs. KMP plus Compose Multiplatform renders cross-platform from one codebase.

Android & Kotlin1 min read

isCoreLibraryDesugaringEnabled Nears End of Life

isCoreLibraryDesugaringEnabled and desugar_jdk_libs 2.1.3 are being phased out as Google modularizes Android system updates, ending the j$ namespace workaround for java.time on legacy devices.

Android & Kotlin1 min read

Koog 1.0 Stabilizes Kotlin AI Agent Framework

Koog 1.0 locks APIs for one year in JetBrains' Kotlin AI agent framework, adding local Android LiteRT inference and OpenTelemetry. JVM teams can build production agents without breaking changes. Adopt stable core first, then add beta features as needed.

Android & Kotlin1 min read

Kotlin 2.4.0 ships Swift package support and Java 26

Kotlin 2.4.0 adds Swift package dependencies for Native, Java 26 for JVM, and WebAssembly Component Model. Multiplatform teams can consume Swift libraries directly and target newer Java. Upgrade via IntelliJ IDEA, Android Studio, or Gradle.

Android & Kotlin2 min read

How does WorkManager guarantee task execution across reboots and process death?

Tests your understanding of WorkManager's durability under process death. Strong answer: Room database persists requests; JobScheduler or AlarmManager executes them; BroadcastReceiver reschedules on reboot.

Android & Kotlin2 min read

Architect periodic and on-demand sync with WorkManager

Tests combining periodic and push WorkManager requests safely. Outline: one Worker class, PeriodicWorkRequest hourly and OneTimeWorkRequest on push, with ExistingWorkPolicy.KEEP plus constraints. Red flag: two Workers, no deduplication, or ForegroundService.

Android & Kotlin2 min read

How would you implement a constrained photo upload with WorkManager?

Tests knowledge of WorkManager constraints and retry policies for deferrable background uploads. A strong answer names OneTimeWorkRequest with Constraints for charging and unmetered network, plus BackoffPolicy for retry.

Android & Kotlin2 min read

How do you implement OAuth2 token refresh with Retrofit Authenticator?

Implement authenticate() with a blocking refresh, new Request with new token, Mutex for parallel 401s. Distinguishing Authenticator from Interceptor for 401 retry and sync.

Get Android bites daily.

Five a day, five minutes, offline. With quizzes so it sticks.

Open testing — you’ll join as an early tester.