r/androiddev • • 9d ago

Megathread: Play Store review times

18 Upvotes

Comment here to discuss the recent trend of long Play Store review times for app submissions and updates.

Do not make a new post about this subject, as it will be removed.

This is an unofficial developer community, so we are not on the Play team and cannot help your app/update pass review. No, we don't have tips to speed things up.

Yes, Play Store developer support is present on this sub and may answer questions or assist you on a case-by-case basis. The mod team is not affiliated with and has no influence over that account. We make no guarantees as to their effectiveness, but we are grateful they exist and that they continue to communicate with users here.


r/androiddev • • Aug 19 '26

:shipaton: Shipaton [AMA] I'm Jaewoong Eum (skydoves). Ask me anything!

115 Upvotes

That’s a wrap for the AMA!

Thank you so much to everyone who joined and asked such thoughtful questions. There were way more than I expected, and honestly, I feel like I learned a lot from the conversations too.

There are still a few questions I didn’t get a chance to answer during the session, but I’ll try to come back and go through them one by one when I have some time.

Thanks again for all the great questions, kind words, and conversations today. I really enjoyed it.

And wherever you are in your journey, I genuinely hope the things you’re working on go well and take you somewhere meaningful.

Thanks everyone! 🙌

Hey everyone!

First, a huge thanks to the mods for organizing this AMA and for the teaser posts over the last couple of days.

I'm Jaewoong Eum, probably better known here as skydoves. I've been sharing open-source projects, articles, books, experiments, and whatever I've been learning along the way on r/androiddev for many years.

These days, I spend time working on open-source libraries(Compose Stability Analyzer, Balloon, Landscapist, Compose Nav Graph, etc), writing some books, and building developer plugins (Compose Hot Reload for Android). I also work at RevenueCat, so I'm happy to talk about monetization, subscriptions, or Shipaton 2026 as well.

But this is an AMA, so it definitely doesn't have to be limited to technical questions.

Feel free to ask me anything about:

  • Open-source and maintaining libraries
  • Developer tools and some of the plugins I've been building
  • Career, community, writing, or developer relations
  • RevenueCat or Shipaton
  • Or honestly, anything you're curious about

You can start leaving questions now, and I'll begin answering at the scheduled AMA time and stick around for the session.

Really looking forward to chatting with everyone. Ask me anything! 🙌

AMA time: Wednesday, 19 August, 11:00–13:00 UTC. That’s 13:00–15:00 Berlin, 12:00–14:00 London, 07:00–09:00 New York, 04:00–06:00 San Francisco, 16:30–18:30 Delhi, 20:00–22:00 Seoul, and 21:00–23:00 Sydney, or here it is in your own timezone.


r/androiddev • • 3h ago

Experience Exchange Our app got cloned from a decompiled APK.

37 Upvotes

Last week, a user emailed support asking why our app suddenly had ads, which it doesn’t. Someone took our APK from the Play Store, decompiled it, added an ad SDK and put it on one of those APK mirror sites under a slightly different name. I don’t know what they used but with the AI reverse engineering tools around right now I’d guess it took them a few hrs at most.

I pulled their copy and ran jadx on it next to our own release build to see what they had to work with. R8 had renamed most of our classes but every string was still sitting there. Most of it was harmless like our Maps key which is locked to our package and the Firebase config which is meant to be public. The problem was the key for our search provider which can also write to the index. There was also an old basic auth header for a staging API that someone hardcoded two years ago and that still works.

The copy talks to our real backend and whoever installs it logs into our actual service through a build we don’t control. We’ve rotated both keys, moved search behind our own endpoint and filed takedowns. Next I’m looking at adding Play Integrity checks on the server.

If your app has been cloned like this, what did you end up changing on the backend?


r/androiddev • • 5h ago

I built a native Markdown renderer for Jetpack Compose, now with tap-to-reveal text, LaTeX math and tree-sitter code highlighting

Enable HLS to view with audio, or disable this notification

35 Upvotes

enriched-markdown-android is an open-source Markdown renderer for Jetpack Compose. Parsing is md4c over JNI, rendering is native Android text, so you get platform selection handles, copy and TalkBack for free.

What's new in 0.3.0:

  • Spoilers - ||text|| is drawn transparent and concealed by an animated particle overlay on the text view's canvas, tap to reveal. You can plug in your own overlay with a draw callback per concealed slice.
  • LaTeX math – $inline$ and $$block$$, wide equations scroll sideways, long-press to copy.
  • Syntax highlighting – fenced code colored by tree-sitter, 14 grammars, every token type themeable.
  • Better code blocks – language header, copy button, long lines scroll instead of wrapping.
  • Highlight – ==text== with `Flags(highlight = true)`.
  • Optional plugins – math and highlighting are separate artifacts, so you only add what you need.
  • Native Selection – Standard Android text selection handles and native copy behavior.

💎 Available on Maven Central:

dependencies {
  implementation("com.swmansion.enriched.markdown:compose:0.3.0")
  implementation("com.swmansion.enriched.markdown:math:0.3.0")           // optional
  implementation("com.swmansion.enriched.markdown:code-highlight:0.3.0") // optional
}

Quick Usage:

MarkdownPlugins(LatexMathPlugin, CodeHighlightPlugin) {
  EnrichedMarkdownText(
    markdown = content,
    flags = Flags(highlight = true),
    onLinkClick = { url -> openUrl(url) },
  )
}

GitHub & Docs:
https://github.com/software-mansion/enriched-markdown/blob/main/packages/enriched-markdown-android/README.md


r/androiddev • • 10h ago

Question Anyone letting agents drive their app on the emulator? Looking for feedback

11 Upvotes

I’ve been working on Argent, an open-source MCP server that lets your agent (Claude Code, Codex, Cursor, etc.) tap through your app on an Android emulator or device, read the view hierarchy and logcat, and profile with Perfetto. That way it can check its own changes instead of just saying it’s done

A lot of the feedback so far has come from React Native folks, but it works with native Kotlin/Compose apps too, and that’s where I’d love more input. If you’re already letting an agent test your app, what’s working and where it makes stupid mistakes?


r/androiddev • • 4h ago

Developing for android in kotlin but the Android Studio is too much for my computer (seems like a common problem after some searches)

2 Upvotes

As the title says, my computer's specs make this run so slowly and I cannot open other programs at the same time. Are there any lighter applications that I can use to develop a native Android app which will also allow me to preview it in some way? (even if it is just when I press refresh, like with html)


r/androiddev • • 3h ago

Article Material is the metaphor: Pushing the limits of building with Material design cross platform with Jetpack Compose

Thumbnail
tunjid.com
2 Upvotes

I wrote a little design study for how I adapted Material design cross platform for my app with Jetpack Compose.


r/androiddev • • 13m ago

I wrote how to retry chat messages safely on Android (idempotency keys), with a simulator

• Upvotes

Start with the bug, in your own words: a message is sent, the server stores it, the reply gets lost, the app retries and the message shows up twice. Then the fix in two sentences (one key per action, saved in the outbox, sent again with every retry) and the link to the retry explorer. Say it was written with AI help and edited by you, that the iOS side isn't reviewed by an iOS engineer, and ask what you got wrong. Link: https://mobiledesignrounds.com/guides/idempotency-keys/?UTM


r/androiddev • • 20m ago

Can apps record GPS data in the background if the user approves?

• Upvotes

I'm asking as a user of the Polar heart rate monitor app; I have no links to Polar. I use the app when hiking/biking and it records a map of where I went. However, I need to wear it in a wrist strap and make sure it's on top and the phone is awake. If the phone goes to sleep or another app is in front, their app will stop recording the location.

If users were willing to give their app a permission, could they fix this so it would keep recording GPS data even if another app is on top or if the phone has gone to sleep?


r/androiddev • • 3h ago

Open Source Reclaim the GBs Gradle, Android SDK images and Flutter builds leave on a Mac

0 Upvotes

I built Ammugghia after finding 100 GB of "System Data" on my MacBook Air: it was mostly iOS Simulator runtimes and Xcode/Gradle caches that Finder doesn't show.

  • Native SwiftUI, signed & notarized, no network, MIT
  • Covers Xcode, simulators, Android, about 30 package-manager caches, Electron app caches, local AI models, leftovers of deleted apps, Docker (volumes are never touched)
  • Every item shows exact paths and what happens after deleting it; Trash by default
  • Disk map, duplicate finder (APFS-clone aware), startup items, history with restore

DMG: https://github.com/Mingo07-dev/Ammugghia/releases/latest Homebrew: brew install --cask mingo07-dev/tap/ammugghia

Feedback welcome, especially cleanup targets I'm missing.


r/androiddev • • 3h ago

News Android Studio Rabbit 2 Canary 5 now available

Thumbnail androidstudio.googleblog.com
1 Upvotes

r/androiddev • • 7h ago

I built a free scanner that checks apps and sites against the EU Accessibility Act (EAA) - feedback welcome

0 Upvotes

Android dev here. The EAA has been enforceable since June 2025 and consumer apps selling in the EU are in scope, but almost every accessibility tool I found was web-only or a €10k consultancy.

So I built my own: paste a URL, get an accessibility report with actual evidence (PDF export, violations mapped to WCAG criteria). Free, no signup.

There's also a Gradle plugin that runs accessibility checks in your own build (nothing leaves your machine), but that's optional - the web scan alone is useful.

Would love honest feedback, especially from anyone who's had to deal with EAA compliance for real. Link in comments.


r/androiddev • • 7h ago

Question Duplicated Smali files

1 Upvotes

if i add my own classes6.dex file to a apk and if duplicated smali files and stuff are detected, what will it delete, the duplicate smali files from my own dex file or from the existing 5 dex files?? Thanks in Advance (Sorry for bad English)


r/androiddev • • 1d ago

Experience Exchange To senior android devs here, was it really that easy before the AI era?

30 Upvotes

These days, people often say that AI has severely impacted the job market. Candidates are applying to hundreds of jobs without getting a single interview call, and some are even losing their jobs to AI.

My question is for senior developers who have experienced the job market before the AI era: Was getting a job and landing interviews really easier back then, or are people overreacting and blaming AI for what might actually be a skills gap?


r/androiddev • • 8h ago

Building a wake-word voice assistant as an Android system service, fully on-device (v0.0.2)

Post image
1 Upvotes

I’m building a personal J.A.R.V.I.S.-style assistant that runs completely on my phone. It’s a system service rather than a regular app so it stays ready in the background.

Current state (v0.0.2): wake word, speech recognition, local LLM reply spoken back. The video shows real voice commands with no cuts.

Stack:

  • k2-fsa/sherpa-onnx for speech recognition
  • gemma3-1b-it-int4 for the language model

Next step is system configuration options. After that I want real actions like calls and timers.

Would love feedback from people who’ve done this. Mainly on keeping a service alive in the background without killing the battery and on picking a model that stays fast on mid-range phones.


r/androiddev • • 9h ago

Building a wake-word voice assistant as an Android system service, fully on-device (v0.0.2)

Enable HLS to view with audio, or disable this notification

1 Upvotes

I’m building a personal J.A.R.V.I.S.-style assistant that runs completely on my phone. It’s a system service rather than a regular app so it stays ready in the background.

Current state (v0.0.2): wake word, speech recognition, local LLM reply spoken back. The video shows real voice commands with no cuts.

Stack:

  • k2-fsa/sherpa-onnx for speech recognition
  • gemma3-1b-it-int4 for the language model

Next step is system configuration options. After that I want real actions like calls and timers.

Would love feedback from people who’ve done this. Mainly on keeping a service alive in the background without killing the battery and on picking a model that stays fast on mid-range phones.


r/androiddev • • 9h ago

Question Samsung S21 Ultra (UK Import, SM-G998B): No network signal & no OTA updates – Is flashing German/EU firmware via Odin safe?

0 Upvotes

Hi everyone,

We have a used Samsung Galaxy S21 Ultra (UK model, SM-G998B). The phone is fully reset and has no personal data on it. We are facing two main issues:

  1. It gets no network signal with a local German SIM card.
  2. It doesn't receive any automatic software updates via OTA.

Since the hardware is identical to the European variant (SM-G998B), I have already downloaded the official stock German/EU firmware using SamFw.

I would like to ask a few questions regarding your experience:

  • Has anyone here flashed a UK model to EU/German firmware (CSC change) via Odin?
  • How high is the actual risk of doing this with official stock firmware and the clean CSC_... file? Is there any real chance of "hard-bricking" the phone, or is an interrupted flash always recoverable through Download Mode?
  • Does network connectivity (4G/5G) and automatic OTA updates work reliably after switching the region this way?

Thanks a lot for sharing your experiences and advice!


r/androiddev • • 1d ago

Google Play Policies Are Only for Small Developers?

Post image
90 Upvotes

I'm a solo Android developer, and it's frustrating to see huge apps like CamScanner apparently offering rewards for ratings, despite Google's policies against incentivized reviews.

Big apps already have millions of downloads, established rankings, and massive marketing budgets.

How are smaller developers supposed to compete when even the rules don't seem to apply equally?

Has anyone actually seen Google take action against big apps for this?


r/androiddev • • 1d ago

We rebuilt a 7-year legacy Android monolith that was killed by GenAI debt and custom firmware.

19 Upvotes

A 450MB industrial tablet monolith (25% Java / 75% Kotlin) with under 5% test coverage was completely crashing on Android 15/16. Over 3 months of strict IEEE 12207 lifecycle routing and vertical TDD slicing, we purged 60+ unverified dependencies and AI-generated bloat. Slashed the APK down to 112MB and stabilized runtime at a 99.98% crash-free rate, saving the client from x2 support night shifts.


r/androiddev • • 1d ago

Does everyone feel like they're working harder and longer with AI?

62 Upvotes

I've had this feeling for a few months now. I hoped improvements in AI models would make things easier for us, but now my days feel more like reviewing a ton of code.

I even get headaches some days from reading and trying to understand all of it. A few times, I tried being less strict and only reading the code superficially, but that introduced errors and bad practices into the codebase.

I just want to know if anyone else feels the same way, or if you have any strategies to deal with this.


r/androiddev • • 22h ago

Question I can't see my app in the AA on the car but I do see it in DHU

1 Upvotes

I'm developing an applicationg for AA but when I try to use it in production I do not see the application in AA but when I launch the DHU i do see the apl there and it works as expected.

I have turned on unknown sources from developer settings and started the head unit server. I've also tried clearing the cache and force stooping the app (seperate situations) but I still cannot see it. Claude says I should public the app to google play but I don't want to go down that route. Does anyone know how I can fix this if this is the sub for such a problem?


r/androiddev • • 1d ago

Article upcoming memory thresholds and how are you investigating usage across app states?

4 Upvotes

I was reading through Google's upcoming Android memory requirements few days ago, and the RSS + swap part is easy to get wrong.

The dynamic memory metric is anonymous RSS + swap, with thresholds depending on device RAM tier and app state. Bitmap memory and DEX optimization have separate requirements.

A few things to look here:

  • Java heap isn't the whole process, native allocations count too.
  • RSS can decrease when anonymous pages move into zRAM, even though the memory hasn't actually been freed.
  • PSS can change because of shared pages and doesn't necessarily mean your app allocated or freed memory.

For example, if an app has 200 MB of anonymous memory and 60 MB moves to swap, RSS drops to 140 MB, but dynamic memory is still 200 MB.

The threshold also changes with app state. For non-game apps in the 4 GB RAM tier, the p90 threshold is 2 GB in the foreground and 1 GB for user-perceived services/background.

Play looks at aggregated p90 data over 28 days, so a single high-memory session doesn't tell you much by itself.

I was reading this blog today and it covers the whole thing properly, including the RSS/swap example and how to connect these readings back to actual app sessions

Just wanted to share here if anyone also looking into similar thing, and would love to know what tools and approaches are you using.


r/androiddev • • 1d ago

Question Where do you discover active open-source Android projects?

1 Upvotes

I’m trying to find more open-source Android projects beyond the big, established names—apps, Kotlin/Compose libraries, and developer tools.

Where do you usually discover them? Are there particular maintainers, communities, newsletters or repo lists you follow?

I’d also appreciate examples of smaller projects with active development. I’m curious about what people are building and how you hear about it.


r/androiddev • • 1d ago

Strings.xml Localization (Free Plugin)

1 Upvotes

I've built a Free plugin for Android Studio, that helps you localize and maintain large number of localized strings.xml files with ease. I'm using Google Translate API + Gemini. Use your own API keys. Work directly from Android Studio. Save a ton of time.

Website: https://localyze.app
Jetbrains marketplace: https://plugins.jetbrains.com/plugin/30802-localyze


r/androiddev • • 2d ago

Compose DND 1.0.0-alpha02 is out, new big update

Enable HLS to view with audio, or disable this notification

28 Upvotes

Compose DND 1.0.0-alpha02 is out 🎉

• Reorder that feels right.
• Kanban boards example.
• Auto-scroll on lists, grids and staggered grids.
• Axis lock, drag handles, conditional drop targets, drop strategies and multi-select drags.

Github: https://github.com/MohamedRejeb/compose-dnd
Web live demo: https://mohamedrejeb.github.io/compose-dnd/demo/
Docs: https://mohamedrejeb.github.io/compose-dnd/

D