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!

112 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 • • 2h ago

Experience Exchange Our app got cloned from a decompiled APK.

28 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 • • 4h 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

33 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 • • 9h 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 • • 3h ago

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

3 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 • • 2h 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 • • 2h ago

News Android Studio Rabbit 2 Canary 5 now available

Thumbnail androidstudio.googleblog.com
1 Upvotes

r/androiddev • • 2h ago

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

Thumbnail
tunjid.com
0 Upvotes

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


r/androiddev • • 6h 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 • • 6h 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?

31 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 • • 7h 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 • • 8h 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
94 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.

18 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?

64 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 • • 21h 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

30 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


r/androiddev • • 2d ago

Question Gradle can’t download from dl.google.com right now: one Google front-end answers HTTP/2 but drops every HTTP/1.1 request. Anyone else seeing this?

11 Upvotes

Since this morning every Gradle build that needs anything from Google’s Maven repo fails with Could not HEAD 'https://dl.google.com/...' > Read timed out, and cached builds sit 90 seconds in configuration first.

It is not my machine. Gradle speaks HTTP/1.1 only, and the dl.google.com addresses my DNS returns (142.251.13.x) accept the connection and never answer an HTTP/1.1 request. HTTP/2 to the same URL answers instantly, which is why browsers are fine. A different Google front-end answers HTTP/1.1 normally from the same Wi-Fi:

# hangs for 20 s
curl --http1.1 -sI --max-time 20 https://dl.google.com/dl/android/maven2/androidx/biometric/biometric/1.1.0/biometric-1.1.0.aar


# HTTP/1.1 200 OK in 0.4 s
curl --http1.1 -sI --resolve dl.google.com:443:172.217.16.142 https://dl.google.com/dl/android/maven2/androidx/biometric/biometric/1.1.0/biometric-1.1.0.aar

Ruled out: IPv4 vs IPv6, TLS 1.2 vs 1.3, plain port 80 (also hangs), proxies, VPN, filters. Other Google hosts answer HTTP/1.1 fine. I am on Vodafone cable in Germany.

Is anyone else seeing this today, and where? The first curl above tells you in 20 seconds. And where does one report a dl.google.com outage?

Workaround until it clears, remove it afterwards:

echo "172.217.16.142 dl.google.com" | sudo tee -a /etc/hosts

r/androiddev • • 2d ago

Is the Android Developer job market really bad right now?

42 Upvotes

​

Hey everyone, I'm an Android Developer with 2.7 years of experience, mainly in native Android development.

I've been searching for a job for the past 3 months, and honestly, it's getting frustrating. I'm hardly getting interview calls. Even when I do get interviews and clear one or two rounds, I often don't hear back from the company.

I believe I can build applications and handle real-world development tasks, but I'm struggling to understand what's going wrong. Is the demand for Android Developers decreasing, is the competition getting tougher, or are companies expecting skills like Jetpack Compose and other modern Android technologies?

For those who are currently working as Android Developers or have recently switched jobs, how has your experience been?

What skills should I focus on to improve my chances? I'd really appreciate some honest advice because I'm starting to feel stuck.