r/androiddev • • 6h ago

Android Studio for Windows on ARM, Finally!

Thumbnail
gallery
21 Upvotes

Google almost gave up on this one, so i decided to build it myself
What works:-

  1. IDE and compiler, solved all performance issues with coding and compiling
  2. XML previews
  3. Jetpack Compose Previews (Had to build the xml and compose viewing library from scratch to support arm64, google did not have that.)

What isn't supported yet:-

  1. Android Emulator, you will need a physical device to test.

Known issues:-

  1. Gradle project is imported every time you open it in android studio (Fixed, thanks for the comments)

Download link: https://github.com/DevanshSampat/android-studio-arm64-releases

All repositories required for building Android Studio are on my github: https://github.com/DevanshSampat?tab=repositories&q=android-studio&type=&language=&sort=

Enjoy Devs ;)


r/androiddev • • 5h ago

Google Play Console's massive "Your Apps Will Be Removed" red warning during routine payment verification is peak toxic UX

Post image
11 Upvotes

I just went through one of the most unnecessarily stressful 24 hours of my developer life, and I need to rant about how Google treats its developers.

Because my app generates revenue, Play Console recently went through a routine check regarding merchant payment verification. Fine, I updated everything immediately and submitted it.

But right after, a massive, scary red banner slammed across my dashboard saying:
"Your developer profile will be removed, and all your apps will be removed from Google Play on November 23, 2026."

Underneath that terrifying headline, in much smaller text, it says: "Google couldn't verify your merchant payment method." And deep down in the microcopy, it basically implies that this warning stays active even while your newly submitted info is under review.

Are you kidding me, Google?

I am a partner introducing revenue to your platform, complying with your rules, and your automated system decides to hold a metaphorical gun to my head with a countdown timer to wipe out my entire business, just because your team takes a day to press a review button?

Mixing up "Routine Administrative Review" and "Severe Violation Punishment" into the exact same panic-inducing UI element is peak lazy engineering and toxic UX. For an entire day, I had to stare at a countdown to my apps being deleted, wondering if an automated glitch would destroy years of my hard work.

The verification finally cleared today (it only took about a day) and the warning went away, but the psychological toll and unnecessary anxiety were completely uncalled for.

Has anyone else been absolutely jump-scared by this specific red banner? Google seriously needs to fix their Developer Experience (DX). This is not how you treat people who build your ecosystem.


r/androiddev • • 20h ago

Gradle vs Kotlin Toolchain: Project Structure Side By Side

Post image
5 Upvotes

r/androiddev • • 20h ago

How do you like working in Big Tech?

3 Upvotes

Specifically as an Android developer? I spoke to my mentor about being interested in android development, and he said he thinks I would only enjoy it only if I went to a Big Tech company because it would provide more challenge and chance for cross team collaboration which I enjoy.

It made me want to hear about people's experience working in Big Tech vs smaller or non-tech companies as an Android dev. Which do you prefer?


r/androiddev • • 1h ago

Discussion How do you keep analytics from turning into a god object in your app?

• Upvotes

n most projects I worked on, analytics was treated as a secondary part of the app. We spend a lot of time on the architecture of main parts, and almost no time on analytics.

Then business asks to track this and that. Then to add a new vendor. Then to decide which event goes where. And in the end we have one AnalyticsManager with a huge list of methods, and every layer depends on it.

I came to a simple idea: the app should not know which analytics vendors exist. Feature code only says what happened, and everything else is split into small pieces:

  • Event describes what happened, in the app’s words
  • Factory decides what one vendor receives for an event, or ignores it
  • Tracker makes one call to one vendor SDK
  • Dispatcher passes calls from the app to the vendors

So in a ViewModel it looks like this:

class CheckoutViewModel(
    private val tracker: EventTrackerService,
) : ViewModel() {

    fun onTicketPurchased(fare: String, price: Double, currency: String) {
        tracker.track(TicketPurchased(fare, price, currency))
    }
}

No vendor SDKs, no god object. Each feature keeps its own factories, and DI (Koin in my example) collects them from all modules. Adding a vendor means writing its factories, and removing one means deleting them.

I wrote a full article about it with code for every piece, published in ProAndroidDev:
https://proandroiddev.com/app-architecture-analytics-ec3471ca619b

I also built an open-source library around this idea, Herald, if you want to see it in practice:
https://mkhytarmkhoian.github.io/herald-docs/

Curious how you handle analytics in your projects. Do you have one manager, a wrapper per vendor, or something else?


r/androiddev • • 18h ago

Question Why do I need a review when promoting from beta to production?

3 Upvotes

Something has been rubbing me the wrong way for a while now. I have 3 tracks for my app in Google Play, internal, open beta, production. When deploying changes we go through all 3 tracks with a single binary. I can understand the Open Beta track needing a review, but once that's approved why do I need yet another review to promote that binary to Production? I honestly wouldn't care if the review times were manageable, but I've had multiple reviews take over 2 weeks. When they are reviewing the binary are they expecting different results? Notes about the app that might be affecting the review timelines; it has Android Auto capabilities as well as a Wear OS version.

TLDR; Why do we need multiple reviews on the same binary when promoting between release tracks?


r/androiddev • • 23h 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 • • 25m ago

Tips and Information Cracking the Mobile Developer Interview (Daily Animated Walkthroughs)

• Upvotes

Hey devs, I'm building out a massive, free library of daily visual tutorials covering the exact things senior devs look for in technical rounds:

- Android internals & architecture

- Flutter & iOS development

- Computer Science basics, Security, & API handling

Check out the daily playlist if you are gearing up for interviews:

📌 Channel Link: PromptlyCoded YouTube Channel


r/androiddev • • 20h 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 • • 15h ago

Open Source I made this Android TV debloater, it just passed 1,000 downloads in 3 days

Thumbnail
gallery
0 Upvotes

It's an open source app that cleans up your Android TV, turns off ads, trackers and bloat in a few taps. Side load apps your TV's store doesn't carry, send files from your phone, and see which apps use data and where they connect.

It's all Kotlin, UI in Jetpack Compose with Material 3 Expressive. A few bits devs might find useful:

- a remote with no lag: the usual `input keyevent` starts a new process for every key press, which is slow. Tellyscope starts one small helper on the TV and keeps it running, so key presses land instantly

- real app names and icons: ADB normally only gives you package names, so a second small helper reads them on the TV and is removed right after

- the ADB client runs entirely on the phone (pure Kotlin on Kadb), including Android 11+ wireless pairing and mDNS discovery. Every reopen of the TV's pairing dialog picks a new port, so it browses mDNS fresh each time instead of trusting the last one

- under 3 MB: most of the crypto library Kadb depends on gets trimmed, keeping only the handful of pieces it actually uses. That alone saved ~700 KB

Happy to answer questions on any of it. It's Free, GPL-3.0, no ads, no tracking, no account. It makes two internet requests: the cleanyourtv debloat lists from GitHub, and an update check you can turn off.

GitHub (APK + source): https://github.com/man15h/tellyscope

Disclosure: Most of the code is written by Claude Opus 5.5 + Fable 5, and I direct the work. what gets built, how it should behave, and what's safe to touch. It's not prompt and ship. Every change goes through a pull request that gets reviewed before I merge it, and CI runs the build, unit tests and lint. Risky features get e2e tests on an Android TV emulator first. The safety rules are hard coded rather than left to the AI and I've created and maintained open source projects since before the AI era. It's GPL-3.0, so you can read all of it on GitHub


r/androiddev • • 23h 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!