tezvyn:

Android & Kotlin

Jetpack Compose, Android Studio, Kotlin, Material You

411 bites

Android & Kotlin2 min read

R8 shrinking, obfuscation, and optimization

WHAT IT TESTS: what R8 does and why. OUTLINE: 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.

Android & Kotlin89 sec read

Build a custom layout in Jetpack Compose

WHAT IT TESTS: understanding Compose's measure/place model. OUTLINE: use the Layout composable with a MeasurePolicy, measure each child once with constraints, then place children and report your size.

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.

Unify Android EventBus and RxJava with Kotlin Flow
Android & Kotlin82 sec 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.

I/O 2026 Standardizes AI Server-Driven UI for Android
Android & Kotlin86 sec 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.

isCoreLibraryDesugaringEnabled Nears End of Life
Android & Kotlin81 sec 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.

Kotlin 2.4.0 Preview, Unified Toolchain, and LSP Alpha Land
Android & Kotlin80 sec read

Kotlin 2.4.0 Preview, Unified Toolchain, and LSP Alpha Land

Kotlin 2.4.0 stabilizes context parameters and explicit backing fields. A new Kotlin Toolchain unifies build, test, and agent workflows under one command, while the Language Server hits Alpha.

Koog 1.0 Stabilizes Kotlin AI Agent Framework
Android & Kotlin82 sec 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.

Kotlin 2.4.0 ships Swift package support and Java 26
Android & Kotlin87 sec 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.

How does WorkManager guarantee task execution across reboots and process death?
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.

Architect periodic and on-demand sync with WorkManager
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.

How would you implement a constrained photo upload with WorkManager?
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?

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

Create a custom View from scratch that draws a shape
Android & Kotlin2 min read

Create a custom View from scratch that draws a shape

This tests Android View measurement and drawing contracts. A strong answer covers: onMeasure resolves dimensions against parent MeasureSpec; onDraw renders with Canvas and Paint; constructors parse attributes.

Roles of minifyEnabled and shrinkResources and common pitfalls
Android & Kotlin2 min read

Roles of minifyEnabled and shrinkResources and common pitfalls

Tests R8 code shrinking vs resource stripping and runtime risks. Outline: minifyEnabled shrinks code; shrinkResources removes unused assets and requires minifyEnabled; dynamic access like getIdentifier() crashes; keep resources with tools:keep or keep.xml.

Chain WorkManager tasks and pass a file URI between workers.
Android & Kotlin2 min read

Chain WorkManager tasks and pass a file URI between workers.

This tests WorkManager chaining and data passing. A strong answer chains Download, Unzip, and Process with WorkContinuation, passes URI via outputData, and reads it with inputData. A red flag is suggesting global state, SharedPreferences, or thread blocking.

OneTimeWorkRequest vs PeriodicWorkRequest and minimum repeat interval
Android & Kotlin2 min read

OneTimeWorkRequest vs PeriodicWorkRequest and minimum repeat interval

Tests WorkManager scheduling constraints and battery tradeoffs. Contrast one-shot chaining with non-chained periodic work, cite the 15-minute minimum, and tie it to system batching under Doze and App Standby. Red flag: claiming exact intervals or no minimum.

Android & Kotlin2 min read

Difference between @Path and @Query in Retrofit with example URLs

Tests Retrofit URL construction. @Path fills a path template like /users/{user}/repos with "octocat" to make /users/octocat/repos. @Query appends ?q=retrofit to /search/repos. Red flag: claiming @Query changes the path.