◉ANTIGRAVITY LABJP
TAG

Android

57 articles
← Back to all tags
Related:
antigravity22Antigravity17app-dev14ios13Jetpack Compose6iOS5kotlin5AI Studio5troubleshooting5indie-dev4jetpack-compose4Kotlin4
▣ App Dev/2026-06-22Advanced

It Only Crashes in Release — Tracking Down When R8 Full Mode Broke My Gson Mapping

It works in debug but crashes only in release. This walks through the R8 full-mode pattern that breaks Gson reflection, how to reproduce it locally, deobfuscate the stack trace, and write the smallest keep rules that fix it.

▣ App Dev/2026-06-22Intermediate

Letting Users Switch the App's Language Without Touching Their Device Language — Notes on Android Per-App Language

How to implement in-app language switching on Android with AppCompatDelegate.setApplicationLocales and locales_config, plus the gotchas around pre-API-33 compatibility, activity recreation, and AdMob, from an implementation point of view.

▣ App Dev/2026-06-22Advanced

Porting a Wallpaper Viewer's Slideshow and Page-Scrubber from iOS to Android — Where the Two-Way Sync with SnapHelper Tripped Me Up

A hands-on record of porting a full-screen wallpaper viewer's slideshow and bottom scrubber from iOS to Android. How I pinned down the current page with RecyclerView and SnapHelper, synced it two-way with the scrubber, and resolved the conflict between auto-advance and user input with a small state machine — in working Kotlin.

▣ App Dev/2026-06-21Advanced

The Back Button Showed an Interstitial Sometimes, Not Others — Rewriting Nested ifs Into a List of Independent Guards

Interstitial display on back press was unstable because nested if statements hid the priority between conditions. Here is how I split it into reason-returning guards and generated tests from a decision table.

▣ App Dev/2026-06-21Advanced

A Few Low-Density Phones Lost Their Bundled Wallpaper — The drawable vs nodpi Boundary in Play's Density Splits

App Bundle density splits will happily split images that should never be split, dropping a static resource on one density bucket only. Here is how I reproduced it with bundletool and fixed it by moving to drawable-nodpi or disabling density split — with the decision criteria.

▣ App Dev/2026-06-18Advanced

Vetting AI Studio's Native Android Code Before It Reaches Your Live App

AI Studio's native Android vibe coding produces working screens at startling speed. But before it goes into a live app, it needs its own vetting. Here is a pre-merge review design for generated Kotlin.

▣ App Dev/2026-06-17Advanced

Stop Dialogs From Stacking: One Gate for Paywalls, Review Prompts, and Rewarded Ads

A field record of curing the bug where a paywall, a review prompt, and a rewarded ad all surface at once, fixed with a single priority-based modal gate. I let an Antigravity agent sweep up the scattered show() calls, but kept the display policy in my own hands.

◈ Agents/2026-05-22Intermediate

Handing Nightly Wallpaper Asset Updates to a Background Agent — Time Budgets, Duplicate Detection, and a Completion Gate

A reproducible account of handing nightly wallpaper asset updates to Antigravity's Background Agent. Covers how to write the task definition, perceptual-hash duplicate detection, one-pass resizing across 12 device profiles, a morning report you can review in five minutes, and the time-budget and completion-gate design that makes unattended runs safe.

◈ Agents/2026-05-18Advanced

Splitting Daily Crashlytics Triage Across Five Antigravity Sub-Agents

Running six indie iOS and Android apps, the morning Crashlytics triage was draining me. I split the workflow across five Antigravity sub-agents (Fetcher, Classifier, Repro, Patch, PR) and locked their input and output to JSON schemas. Two weeks of production data shows where the human review boundary belongs.

▣ App Dev/2026-05-17Intermediate

Android Theme Switch White Screen: Replacing Activity.recreate() with AppRestarter

A real fix for the white screen that appears when switching themes on Android. Covers why Activity.recreate() causes the issue, how AppRestarter.safeRestart() eliminates it, and a ModalGate pattern to prevent dialog conflicts after restart.

▣ App Dev/2026-05-17Intermediate

When Antigravity Fixes a RecyclerView Crash but Breaks Something Else — The Defensive Copy Solution

If RecyclerView IndexOutOfBoundsExceptions keep coming back after Antigravity's fix, shared list reference is likely the cause. Here's how to prompt Antigravity for the right fix and encode the pattern in AGENTS.md.

◈ Agents/2026-05-17Intermediate

Integrating Antigravity Agents into My Android Release Workflow — 3 Months of Honest Findings

Three months of running Antigravity Agents inside my Android release flow: where crash diagnosis landed, where it missed, how I turned staged-rollout Go/No-Go into a threshold dialog, and the context checklist that decides diagnostic accuracy.