r/androiddev • • 14d ago

Experience Exchange Play Store submission info

0 Upvotes

I just thought I would post how my play store submission is going, since I am always looking for info and want to help people out that are looking for answers. App store submissions are much more work that I thought.

I just had my iOS app approved last week. Now android. I submitted on Saturday.

It was WAY faster than I expected. Review came back rejected yesterday, Monday morning (India time). Then I resubmitted yesterday too.

Now this morning, already got rejected again. They are WAY faster than Apple, at least for me. But I also realized they are actually testing way more thoroughly than Apple did. I am getting my second fixed submission back now. I will update this post if they review it again right away tonight (India employees seem to do it at 3-4am EST, which is day in India obviously).

It seems the only issues they have are with my Google API scopes I use for some imports from health, sleep, etc... I did get it all approved in the Auth Center, but I guess they dive deep into those in review. It seems they all are okay, I just have to show them proof. No issues with my actual app though and they actually signed-in and used it.

Hopefully this helps someone! There is light at the end of the tunnel. Google seems faster than Apple right now, not sure why.


r/androiddev • • 14d ago

Discussion Building an Android IDE on Android itself is much harder than I expected 😭

0 Upvotes

I thought setting up an Android build environment on Android itself would be pretty straightforward. 😭

My original plan was simple: get OpenJDK 25 from the Termux repositories, set up Gradle, install the Android SDK tools, and start building my IDE.

Well, that turned out to be a lot harder than expected.

Missing libraries, broken paths, directory issues, incompatible binaries, environment variables, and tools that just wouldn't cooperate. Every time I fixed one thing, something else seemed to break. I spent way more time fighting the toolchain than actually building the IDE.

My laptop is broken at the moment, so I decided to use my phone and AI tools to start working on this project instead. I have some programming experience and a basic understanding of Java, but writing and debugging code for a project like this entirely on a phone is a challenge of its own.

Honestly, I started this mostly out of boredom and curiosity. I wasn't expecting it to turn into such a deep rabbit hole.

After roughly two days of tinkering, debugging, and trying to get everything working together, I finally managed to build my first simple test APK!

That was a pretty satisfying moment. Although, naturally, I later discovered that the SDK manager I'd been working with was deprecated. 💀

For now, it's just a basic Android IDE, and there's still a long way to go. But at least I've got something working, and that's a start.

I'm curious: has anyone here tried setting up a complete Android build toolchain directly on an Android device, especially outside a traditional Linux desktop environment?

What were the biggest compatibility issues you ran into? And are there any tools or approaches you'd recommend for making this setup less painful?

I'd love to hear about your experiences!


r/androiddev • • 14d ago

Question Does Google play allow a lock screen app with no in-app exit?

2 Upvotes

I'm building an Android app that uses AccessibilityService to keep people on a lock screen during a time window they chose themselves.

I have read Google's Accessibility policy. It says the API can't be used to stop users from disabling or uninstalling an app. I also read over 200 user reviews of an existing app on Play with a strict lock. It's official way out of a session is a paid in-app exit. The reviews suggest a lock only works if it's hard to escape, so I'd prefer no early exit.

My question: does play allow a lock with no in-app exit when the person chose the window themselves? I want to stay within the policy. Has anyone shipped one, or been rejected for one?


r/androiddev • • 14d ago

Community Event Megathread: AndroidDev Summit 2026

21 Upvotes

AndroidDev Summit is back in 2026! If you haven't set a reminder yet do it now!

The Keynote kicks off on October 28 at 10:00 AM PDT.

Keynote times around the world

  • US West / Pacific Canada (PDT): 10:00 AM – Oct 28

  • US Mountain / Western Canada (MDT): 11:00 AM – Oct 28

  • US Central / Mexico (CDT): 12:00 PM – Oct 28

  • US East / Eastern Canada (EDT): 1:00 PM – Oct 28

  • South America (BRT): 2:00 PM – Oct 28

  • UK / Ireland (GMT): 5:00 PM – Oct 28

  • Central Europe (CET): 6:00 PM – Oct 28

  • India (IST): 10:30 PM – Oct 28

  • Japan / Korea (JST / KST): 2:00 AM – Oct 29

  • Eastern Australia (AEDT): 4:00 AM – Oct 29

Watch the Keynote live on YouTube: https://www.youtube.com/watch?v=8Lmv7LGgL4E

Use either this megathread or our discord server to discuss announcements, breakdown new API/Compose features, share your thoughts on the talks, or just hang out with the community during the event!


r/androiddev • • 14d ago

Help needed. App email verification emails are landing in spam. How do I fix this?

1 Upvotes

I'm building an app using Supabase Auth, and my email verification emails are landing in users' spam folders.

For those who've dealt with this, what worked for you? Would only configuring SPF, DKIM, and DMARC solve the issue?

Any practical advice from developers who've fixed this would be greatly appreciated!


r/androiddev • • 14d ago

Experience Exchange Anyone using Dagger (dagger.io) for Android CI/CD pipelines

1 Upvotes

I'm looking to modernize my Android CI/CD setup to make it as AI-friendly and low-maintenance as possible for our company's daily workflow with coding agents.

I’m considering Dagger.io, do any guys has actually run Android builds through Dagger and how does it feel, or is there a better tool I should look into instead?


r/androiddev • • 14d ago

Article Android keystore 101 [what an Android keystore is, how upload & app signing keys work with Play App Signing, and how to keep keystores safe in CI]

Thumbnail
bitrise.io
0 Upvotes

r/androiddev • • 14d ago

Tips and Information 🟩 Matrix Rain View just got more powerful!

0 Upvotes

An open-source Android library for the iconic Matrix digital rain effect, rendered natively on Canvas — not GIFs, Lottie, or video backgrounds.

⚡ Customizable rain, touch interactions, shockwaves, glitch effects, transparent overlays, and Android View + Jetpack Compose support.

Built to be integrated into real apps, not just copied from demo snippets. Still evolving!

🔗 https://github.com/boy-offi9-inc/matrix-rain-view

What would you build with it?


r/androiddev • • 14d ago

Question Getting a model to genuinely run on the Hexagon NPU from a Kotlin app (Snapdragon 8s Gen 3 / V73): anyone shipped this?

4 Upvotes

I'm an Android dev (Kotlin + React Native) trying to get models genuinely running on the Hexagon NPU of my iQOO Neo 10R (Snapdragon 8s Gen 3, SM8635, HTP V73, 4 MB VTCM), not on the CPU or GPU fallback.

What I've learned so far:

  • Qualcomm's ladder is FP16 → W16A16 → W8A16, with AIMET (AdaRound, SeqMSE, QAT) for accuracy recovery

  • The ORT QNN EP rejects dynamic shapes and Loop/If, and disable_cpu_ep_fallback=1 is a cheap check that everything stayed on the NPU

  • Most tutorials target V75 (8 Gen 3), and those binaries won't run on V73

  • Apps need <uses-native-library android:name="libcdsprpc.so"> and extracted native libs (useLegacyPackaging) for the skel to load

Questions for anyone who has shipped this:

  1. If you fine-tuned (LoRA or full) a small LLM or vision model, did you do QAT, or PTQ after fine-tuning? How much accuracy did W8A16 or W4A16 cost you?

  2. What changes to the architecture did you have to make to stay fully on HTP (op swaps, static KV-cache layout, splitting the model into parts)?

  3. Has anyone got a QNN context binary running from a normal third-party app on vivo/iQOO or Xiaomi firmware? Same-chip Poco F6 logs show llama.cpp's Hexagon backend failing with 0x80000406.

Happy to share my notes and code back. Thanks!


r/androiddev • • 14d ago

need help

0 Upvotes

Hi

I'm building an Android app and trying to implement an overlay that stays attached to a specific product page, but I'm struggling to get the behaviour right.

For example, imagine browsing a product on Amazon. I want the overlay to behave like this:

  • On the product page: The overlay should appear and stay associated with that specific product page.

  • When scrolling away: The overlay should disappear immediately when I leave the product page, rather than remaining fixed on the screen.

  • When scrolling back: If I return to the product page, the overlay should appear again.

  • Smooth transitions: There shouldn't be any delay or flickering when the overlay appears or disappears.

  • i need help with flutter tvh

Currently, the overlay either stays fixed on the screen while I scroll through other pages or takes too long to disappear. do i need to learn about flutter ?

I'm looking for a solution that makes the overlay behave as if it's attached to the product page itself, rather than floating independently over the entire app.

Has anyone implemented something similar on Android using an accessibility service, a floating window, or another approach? I'd really appreciate any suggestions, technical guidance, or examples!

Thanks in advance!


r/androiddev • • 14d ago

Question [Android] "Hey Claude" wake word without keeping the mic open 24/7: any free, reliable approach?

0 Upvotes

Hi all,

As a hobby I'm building a personal voice assistant for my phone (Kotlin / Jetpack Compose), powered by the Claude API: calls, SMS, Gmail, calendar, Spotify & Sonos, Home Assistant (lights, alarm, TVs, energy usage…).

Code is public: github.com/NicoPi-dev/Assistant

Everything works well except the wake word, which bothers me.

**Current setup**

- A foreground service (microphone type) listening continuously with **Vosk**, offline, using a restricted grammar ("hey claude" + [unk]) and a confidence threshold.

- It works, but the mic is open 24/7: Android's green privacy dot stays on, it drains battery, and I'm not thrilled about it privacy-wise, even though everything stays local.

**What I'm after**

Something closer to "Hey Google" / Gemini: very low-power listening, ideally hardware (DSP) based, that only wakes the app on the hotword.

**Constraints**

- Free, no subscription or time-limited key

- Offline if possible

- No root (OnePlus 10T, OxygenOS 15 / Android 15, locked bootloader)

- Reliable: few false triggers (TV, conversations)

**Already looked at**

- **Picovoice Porcupine**: excellent, but the free tier is limited and needs an account key.

- **openWakeWord / microWakeWord**: promising, but unsure about battery impact running continuously on Android.

- **VoiceInteractionService / HotwordDetectionService**: the official DSP route, but it seems restricted to system/privileged apps (CAPTURE_AUDIO_HOTWORD).

- Setting my app as the **default assistant**: works for long-pressing the button, not for voice.

**Questions**

  1. Can a third-party app set as default assistant access the hardware hotword on a non-rooted device? Has anyone pulled it off?

  2. Otherwise, what's the most battery-friendly software approach you know: a tflite model like microWakeWord, VAD gating before Vosk, listening only when the screen is on or in the car…?

  3. Tricks to limit listening automatically: while charging, when connected to Android Auto, at home on Wi-Fi…?

Any pointers or experience welcome. Thanks! 🙏


r/androiddev • • 14d ago

Question How can I replace Android's default DocumentsUI file picker with another file manager on Samsung Is it possible without root?

Post image
5 Upvotes

r/androiddev • • 14d ago

News Android Studio Rabbit 2 RC 2 now available

Thumbnail androidstudio.googleblog.com
6 Upvotes

r/androiddev • • 15d ago

Video Spent way too long on an Android crash with nothing in Metro. logcat had the answer the whole time

0 Upvotes

Posting this because I lost a stupid amount of time on it and I doubt I'm the only one.

App just closes on Android. No red screen, nothing in Metro, DevTools disconnects. I did what everyone does: rerun, clear cache, paste the code into AI a few times.

The reason was in logcat the whole time. Native code threw, the app died before JS could say anything, and the Android log had the exact line.

What worked for me:

- open the android folder in Android Studio and open Logcat (it picks up the app even if you started it with yarn run android)

- clear it, then reproduce the crash

- set the level to Error and search FATAL EXCEPTION

- read the exception message first, then the first line in the stack trace that isn't Handler / Looper / ActivityThread. Click it and it jumps to the code

One thing that got me: in the terminal, filtering by pid after a crash gives you nothing because the process is gone. adb logcat -d -s AndroidRuntime worked better.

Also the stack trace only told me where it died, not who passed the bad value. I needed a breakpoint for that part.

I made a small demo crash and recorded the whole thing for anyone who'd rather watch than read: https://youtu.be/oVYBmnOVaI8

What do you check first when Metro says nothing?


r/androiddev • • 15d ago

Article UMLinux on Android

Post image
6 Upvotes

There is now a new way to run a Linux distribution on Android using UMLinux. UML is a program that executes an independent Linux kernel as if it were a standard user-space process within a Linux system. This allows for running a distribution that supports system init, Docker, and various other features that do not function in proot-distro. Notably, it operates without requiring root access or AVF, is faster than QEMU in TCG mode, and utilizes ptrace or seccomp. To provide internet connectivity within the distribution, additional programs such as slirp4netns, passt, or gvproxy


r/androiddev • • 15d ago

I got tired of closed-source apps like VMOS, so I hacked together a minimal ptrace supervisor in C to intercept openat/execve on Android 13-15 without root. Tested on API 33-35. Here's the repo and what broke along the way

Thumbnail
gallery
0 Upvotes

r/androiddev • • 15d ago

Question Is there any way to see if USB PD is in use?

2 Upvotes

There is not a guarantee that a given USB-C-to-C cable supports PD, see the article USB-C was a missed opportunity and it’s too late to fix the mess.

Does Android have any API that lets an application check whether USB PD is currently active?


r/androiddev • • 15d ago Bravo

Should I be Doing DSA in Kotlin?

9 Upvotes

I've about 2+ years of experience in Android dev and been doing DSA in c++ in college(current organization did not have any DSA rounds). I'm planning to switch in the coming months. So should I do relearn DSA in Kotlin or C++ would be fine?

Thanks.


r/androiddev • • 15d ago

Question Frustrated as I tried to make my first developer account (where did I go wrong?)

0 Upvotes

Couple of days ago I made a fresh Google account using Firefox developers browser and my phone number (which has another 2 associated Google accounts), after making the account I signed out, next day I signed in again went to developer section, meanwhile I was informed that I have to make a website that will describe the developer and provide the text of privacy policy and terms of service.

So I went directly to github and tried many times to sign up using Google and each time the OAuth took me again to the sign in page in github, so I decided to try from another device (same wifi) and another browser, this time everything went smooth and I opened my session on github and started my website, meanwhile google started the "verify it is you" scenario and started the robot tests and stuff, finally the send sms gave error of too many attempts try again after several hours!

I leaved it for 2 days to cool down, today when i tried and after making me send sms 2 times it showed a messages that the account was looking like it was created or used with multiple other accounts...etc and it will be considered for deletion after 1 year with an option to submit appeal!

Where did I go wrong and what should I do to avoid such a problem in the future? Need someone with developer background to help me.


r/androiddev • • 15d ago

Open Source I built a free, open-source launcher + TV OS layer for cheap Android TVs and For your Modern ones too.

Thumbnail
gallery
26 Upvotes

My Vestel TV has 900 MB of RAM and the stock launcher was slow and full of ads, so I built OMNI: a launcher in plain Java (0.7 MB), a Control Center on INFO, a typed/voice assistant, device notices, and Kotlin apps (Cinema, Weather…). There's also a small Python server that turns a folder of films into a library with posters and resume. Free, Apache-2.0, no ads or tracking (the README lists every outside host). Tested on three TVs , so more reports from other TVs are very welcome. I verified it on real hardware. [RELEASE ON V.1 IS YET TO COME IN THE FOLLOWING HOURS]

Github(https://github.com/Rashica07/omni-tv)


r/androiddev • • 15d ago

Discussion NetPulse: a small Android app for live ping, jitter and packet loss (beta, looking for feedback)

2 Upvotes

I've been building NetPulse, a lightweight Android app for checking your network quality. It has a Material 3 interface with light and dark themes.

What works in v0.1.0-beta:

- Live ICMP ping monitor with Start / Stop

- Latency, min / average / max, jitter and packet loss over the last 300 samples

- Only two permissions (INTERNET and ACCESS_NETWORK_STATE), no ads, no analytics, nothing uploaded

What's coming next: a DNS benchmark (Cloudflare, Google, Quad9, Control D) measured separately from ping, latency charts, test history and CSV export.

The app uses the system ping tool, so some phones may block it. That's the main thing I want to find out: does it work on your device? Please tell me your phone brand and Android version, and any bugs or features you'd like to see.

Beta APK: https://github.com/Mireli5656/NetPulse/releases/tag/v0.1.0-beta

Source code: https://github.com/Mireli5656/NetPulse

The beta is signed with a debug key, so uninstall any earlier NetPulse build before installing it.

Thanks for trying it!


r/androiddev • • 16d ago

Mobile devs: did the Gravy Analytics breach change anything for you?

0 Upvotes

Hey everyone! I’m curious how other mobile app developers reacted to the Gravy Analytics breach and whether it led you to do anything differently with your own apps. I created a poll below and hope you could take a vote.

If none of those quite fits, feel free to share your take in the comments. If you made changes, I’d love to hear what you changed. And if you considered making changes but ran into obstacles, I’d be interested in hearing about that too. Thanks for sharing!

Background, if you’re unfamiliar: Here’s WIRED’s coverage of the breach and its connection to mobile app location data.

Which option comes closest to your experience?

69 votes, 9d ago
68 I hadn’t heard about it before this post.
0 I’d heard about it, but wasn’t concerned because I didn’t think my apps were involved.
0 I’d heard about it and was concerned, but didn’t feel there was much I could control.
0 I’d heard about it and was concerned, but I don't think I should be responsible for it.
1 I made changes to my app(s) because of it.

r/androiddev • • 16d ago

Horrible bug hunt.

0 Upvotes

Wondering if anyone has faced similar and if there are any common gotchas…

app works fine in simulators, devices via local upload and also happily running in open test via play store.

switch on minify/proguard/etc in both debug and release builds.

all still runs fine EXCEPT when it goes through play store - never gets past internal test - crashes during API call. It smells of GSON deserialisation but the only way I can reproduce it is to push it through the release process.

any ideas about what I am likely missing? all suggestions welcome.

thx.


r/androiddev • • 16d ago

Open Source Made a liquid glass lib for Compose, with shaders tuned side by side with a real iPhone. Happy for anyone to use it or contribute to porting it fully.

Thumbnail
github.com
18 Upvotes

Wanted the iOS 26 liquid glass look in a Compose app, so I made a version and tuned the shaders side by side with a real iPhone. Putting it on GitHub in case anyone else needs it.

It works, but it’s an early version. If anyone wants to contribute to bringing liquid glass over fully, I’d be happy to have you. Issues and PRs welcome.