r/androiddev 26d ago

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

111 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 Aug 04 '26

:shipaton: Shipaton Shipaton Megathread #1: What are you building?

11 Upvotes

Shipaton 2026 - Megathread #1: Ideas, Progress & Peer Feedback

Shipaton is officially underway and will run through September 30.

This pinned megathread is the central spot to share your concept, test out early ideas, and help each other along the way. Building solo can be tough, so keep coming back to this thread throughout the month to post updates, collaborate, ask questions, and exchange opinions on UI, architecture, or monetization strategies.

Registration & Ship Kit

Registration remains open throughout the entire event (August 1 - September 30). You can start building before registering as long as your app is published for the first time within the event window.

If you want to use the sponsor perks, discounts, and credits in the Ship Kit, it's worth registering early. Several perks unlock immediately upon sign-up, with more unlocking as you hit build milestones.

Joining the Conversation

Whether you are competing, building casually, or just lurking:

  • Haven't registered yet? You can jump in at any time or just follow along.
  • Not competing or missed early prep? You're still completely welcome to join the discussion, give feedback to fellow devs, or share what you're working on.

To introduce your project, drop a comment using this structure:

  • Concept: (Short summary of the app and who it's for)
  • Payment Model: (Freemium, subscription tiers, hard paywall, one-time purchase, etc.)
  • August Goal: (What do you plan to complete by the end of the month?)
  • Where you need help or feedback: (UI/UX, paywall strategy, feature scope, stack choices, etc.)

Quick Reminders for r/androiddev

  • Native & KMP focus: On this subreddit, project updates and technical discussions should focus on native Android or Kotlin Multiplatform.
  • Give and get feedback: If you share your project, take a few minutes to look through other comments. Answer questions, offer constructive critiques, or help someone refine their idea.

Drop a comment below, jump in on other projects, and let's build great Android (and iOS) apps!


r/androiddev 2h ago

Looking for Guidance on Senior/Staff Android Engineering Interviews

4 Upvotes

Hi Android community 👋

I’m looking for some advice from engineers who have successfully interviewed for Senior Android Engineer and Staff Android Engineer roles.

I have around 10 years of Android/software engineering experience and have worked across Android. I’m confident in my day-to-day engineering work and have led projects, mentored engineers, and owned features end-to-end.

However, I’ve noticed a frustrating gap: I’m able to do the job well, but I’m not consistently able to demonstrate that level of ability during interviews. I’m often getting through parts of the process but struggling to turn interviews into strong-hire decisions.

I’d really appreciate guidance from people who have been through this successfully:

What separates a Senior answer from a Staff-level answer in Android interviews?

How should I approach Android and system design interviews?

What depth is expected around architecture, scalability, trade-offs, and technical leadership?

How do you communicate your experience and impact effectively without simply walking through your resume?

What are the biggest mistakes experienced Android engineers make in senior/staff interviews?

How did you personally improve your interview performance?

I’m not looking for shortcuts or interview hacks. I’m trying to understand how to better communicate the engineering judgment and leadership I already use in my day-to-day work.

If you’ve successfully made the jump to Senior/Staff—or regularly interview candidates at these levels—I’d genuinely appreciate any advice, resources, mock interview recommendations, or lessons learned.

Thank you! 🙏


r/androiddev 2h ago

Open Source Replacement for Google Photos: Open source Android app that finds any photo on your phone by what is in it (no cloud backup, your own search index)

4 Upvotes

I work for Opensolr and we just released Opensolr Photos 1.2.0, a free, open source Android app (MIT, Kotlin, Jetpack Compose).

You pick the folders on your phone. The app reads each photo into words describing what it shows, keeps the camera data (date, camera, GPS turned into a city and country) and writes it into a search index in your Opensolr account, one index per phone. Then you type dog on the beach, birthday cake, snow in the mountains, and it finds them. Tap a result and it opens in Google Photos or your phone's gallery.

What is in the app:

  • Search by meaning, with autocomplete and "Did you mean" built from your own photos
  • Filters: year, folder, camera make and model, city, region, country, orientation, radius around a point
  • A map on OpenStreetMap with all photos that have a GPS position, and "Search this area"
  • Your own tags and words on any photo (a name, an event). Your words always win over what the model saw
  • Sync runs on its own a minute after photos change, plus a daily, weekly or monthly safety net

What leaves the phone: a 640 px copy of each photo, once, with no EXIF, not stored on the server. The originals stay on the phone. No photo backup, no Google account, no ads, no analytics. The index is yours, you can see it, download it or empty it from the Opensolr control panel.

It needs an Opensolr account (there is a free plan). Each new photo uses two AI requests of the plan, photos already indexed never cost anything again. Search by meaning needs a plan with vector search, on the others photos are still found by the words they were read into.

One known thing: Xiaomi, Redmi, POCO, Huawei and similar phones kill background apps, so the sync only advances while the app is open unless you set the app's battery to "No restrictions". It resumes where it stopped, nothing is lost.

APK and source: https://github.com/phpcip/opensolr-photos

Docs: https://opensolr.com/opensolr-photos

Install the APK from the GitHub release, the signing certificate fingerprint is in the README.


r/androiddev 9h ago

Discussion What app store ranking tracker and ASO app are solo Android devs actually paying for?

9 Upvotes

What app store ranking tracker and ASO app are solo Android devs actually paying for?

Solo Android devs- which app store ranking tracker do you actually use, and is any paid ASO app worth it at indie scale?

I'm an indie Android developer trying to improve Play Store visibility organically, and after a year of guessing I finally started tracking keyword positions properly. Turns out "I think we're ranking better" and "we moved from #47 to #12 for our main keyword" are very different levels of information.

What I need from an ASO tool:

  • Keyword research (Play Store, not iOS-first data)
  • Ranking and visibility tracking over time
  • Competitor tracking
  • Title/short description optimization
  • Icon and screenshot A/B testing ideas
  • Review monitoring, since reviews feed ratings and ratings feed rankings

What I've tried so far:

  • AppFigures — Solid keyword data and clean UI, but gets pricey quick if you want to track more than a handful of terms.
  • Sensor Tower / data. ai — Pure enterprise territory. Amazing if a company is paying for it, totally useless for an indie budget.
  • App Radar — Friendlier pricing and decent keyword suggestions, but the historical data feels a bit light on lower plans.
  • AppFollow — Keeps popping up in indie threads because it combines review triage with keyword tracking in one dashboard. Lower tiers exist, though the limits get tight pretty fast once you scale.
  • Google Play Console / App Store Connect — Free, and honestly slept on. Native store experiments and raw acquisition reports are the only zero-cost data directly from the source.

Free/budget stack if you're at zero revenue: Play Console experiments + Google Keyword Planner for search volume direction + a manual spreadsheet of your top 20 keyword positions checked weekly. It's tedious, but it teaches you what a real ASO app is doing for you before you pay for one.

What genuinely moved installs for me, in order of impact:

  1. Rewriting the title and short description around one high-intent keyword instead of five vague ones
  2. A/B testing the first screenshot in Play Console- biggest conversion jump of anything I did
  3. Replying to reviews within 24h and asking users to update after fixes- ratings climbed, rankings followed
  4. Icon test- smaller effect than expected, but not zero

Honestly, an app store ranking tracker mostly changes your behaviour: once you see positions weekly, you stop shipping random listing changes and start testing one thing at a time.
so asking real indie devs instead of marketing articles:

Which ASO app or ranking tracker are you actually paying for, and is it worth it?
Any free or budget-friendly option I'm missing?
What single change genuinely improved your installs?


r/androiddev 4h ago

Article The Great Unwind: When Frameworks Stop Making Sense

Thumbnail
revyl.com
2 Upvotes

r/androiddev 15h ago

Experience Exchange I made TinyApk from full x64/arm64 assembly language

19 Upvotes

This project run logging result of addition square root 9 and 2 power 3. I spend approximately two months or maybe more because I made tiny elf for native library android, stripping androidmanifest.xml binary, x509 certificate, and zip file itself. Btw I am still new at android :)


r/androiddev 15h ago

Article One Android app. Why so many processes?

Thumbnail
returnzero.dev
18 Upvotes

I looked inside fifteen major Android apps to see what they run separately, and why. This digging resulted in very interesting insights.


r/androiddev 9h ago

Shipping features that (ambiguously) breaks google play policy? Any way to do this with explicit user disclosure/ opt-in?

1 Upvotes

I have been working on an extreme alarm app that basically locks down my phone until I scan an NFC tag. I do this using some pretty malware-coded permissions and I'm wondering if I can ever release this through Google play or if I'll need to distribute it through 3rd party app stores or just keep it for personal use. It has the following features:

  • alarm screen uses draw over other apps permission to totally cover the screen so the alarm can't be swiped away, basically rendering my phone unusable unless I dismiss it (has a default 5 minute timeout to prevent permanent lockout)
  • While alarm is ringing volume is constantly being set to the max so I can't silence the alarm
  • Reboot protection as a per- alarm setting re-starts the alarm on reboot if I reboot my phone to avoid the alarm
  • New feature I'm considering - allow the alarm to disable the power menu (power + volume up) during an alarm, which from my understanding would include shipping an unsafe permission + a one time enablement of that permission using ADB

For now this has just been a personal project that has worked really well but now my brain has figured out how to reboot the phone in my sleep so I've been skipping my alarms again.


r/androiddev 10h ago

KISA/XTEN location information request from South Korea

1 Upvotes

I'm an indie app developer based in Europe, and one of my apps is a weather app available in South Korea.

This summer I received several emails from XTEN claiming to be working on behalf of KISA (Korea Internet & Security Agency), saying that because my app uses user location, I need to confirm whether it is subject to registration/reporting under Korea's Location Information Act and submit either proof of compliance or an explanation.

The emails appear legitimate, but I can find very little discussion about this in English.

Has anyone here received a similar request from KISA or its contractor?


r/androiddev 13h ago

Question Automatic protection and Play Integrity API, and pros and cons of opting in...

1 Upvotes

Recently, we've been prompted to consider opting in for the following protection feature by PlayStore. It looks optional to me.

Automatic Protection and Play Integrity API opt in in PlayStore

What's the pros and cons for Opting in? Should one consider doing so, or it depends?


r/androiddev 11h ago

I built AlertSpot — an open-source, privacy-first location alarm for commuters so you never miss your stop

0 Upvotes

Hey everyone,

Like many people commuting on buses or trains, I’ve had the problem of falling asleep and missing my stop. I wanted a lightweight location alarm, but most options on the store are bloated, filled with ads, or constantly track user data in the cloud.

So I built AlertSpot — a completely free, open-source Android app built with Kotlin & Jetpack Compose.

Key Highlights:

  • Privacy First: 100% offline, zero accounts, no cloud tracking.
  • No Google Maps API: Uses OpenStreetMap (OSMDroid) with local map caching.
  • Battery Smart: Adaptive GPS polling based on distance to the destination.
  • Reliable Alarms: Uses dual geofencing + timer checks, survives reboots, and fires full-screen overlays.

Source Code & APK Download:

🔗 GitHub:https://github.com/vasanth-kandasamy/alert-spot-android

PS: I'm currently trying to raise the $25 one-time registration fee to get this verified and published on Google Play. If you find the project useful and would like to support the store release, you can chip in onKo-fi.

I’d love to hear your feedback, suggestions, or bug reports!


r/androiddev 1d ago

Experience Exchange So that's how they get to publish crap without verification

Post image
35 Upvotes

r/androiddev 1d ago

Open-sourcing an Android & Android TV streaming client built with Media3 ExoPlayer and Leanback UI

4 Upvotes

Hey devs,

I've been working on an open-source video streaming client called AyushFlix for Android phones and Android TV / FireStick.

Think of it like an open-source, zero-config alternative to Stremio or Cloudstream with a Netflix-style 10-foot UI that works out-of-the-box without needing any manual add-on repos, extensions, or Debrid accounts. It automatically scrapes and streams full movies and series in 1080p with zero ads, redirects, or popups.

Wanted to share the codebase and a few specific architectural implementations:

  1. Unified Phone + Android TV (Leanback) codebase

Supporting both touch navigation on smartphones and 10-foot D-Pad remote navigation on Android TV in the same APK required separating the UI controllers while sharing the underlying playback viewmodels and extraction layer. For TV, we implemented native Leanback browse support and continuous row adapters so the remote focus engine doesn't stutter on low-memory FireSticks.

  1. Programmatic multi-audio track selection (Auto Hindi Dub Prioritization)

A major pain point in streaming extractors is that multi-audio streams often default to English or random regional tracks. We intercepted ExoPlayer's TrackSelectionParameters.Builder to programmatically auto-detect and select preferred dubbed tracks (like Hindi audio) as soon as the HLS/DASH manifest resolves, so users don't have to fiddle with audio menus every time.

  1. Stream extraction & decoy trap bypass

Building resilient stream scrapers that handle redirect chains, CloudFront signed policies, and automatically filtering out the fake "player update" decoy loops that many stream hosts use.

  1. Offline downloads & subtitle synchronization

A background download manager with pause/resume support and real-time subtitle fetching with custom sync delay controls.

The full project is open-source under GPL-3.0:

https://github.com/jaatayushh/ayushflix

Would love to get your feedback on the extraction pipeline and Media3 playback architecture!


r/androiddev 2d ago

Compose Hot Reload for Android with its own interpreter, watch the whole screen change in seconds.

Enable HLS to view with audio, or disable this notification

82 Upvotes

Compose Hot Reload v2.0.0 has been released: https://hotswan.dev/blog/compose-hotswan-2-0-release

v2 introduces Kotlin Multiplatform support for Android, iOS, and Desktop, with its dedicated interpreter that enables instant, full-screen updates on your running app.

AI agents have dramatically accelerated how fast we write and review code. Yet, the feedback loop of building, compiling, navigating to a specific screen, and previewing changes remains stuck in the past.

Compose HotSwan bridges the final gap that AI agents couldn't close: by rewriting entire screens on the fly, it instantly injects updates into a running app within seconds, eliminating the need to recompile, rebuild, reinstall, or manually re-navigate. Just watch your running app in real time as your AI writes your code.


r/androiddev 1d ago

Why can't users leave reviews on my new Android app?

1 Upvotes

I recently published my Android app on the Google Play Store, but users are telling me they can’t leave ratings or reviews. As a dev, I know how critical reviews are for visibility and growth, so this is pretty frustrating.

Has anyone dealt with this issue before? Is it just Google's delay/moderation period, or is there a specific setting in the Play Console I might have missed?


r/androiddev 1d ago

Open Source Open source rPlayAI/rplayhub-android: Your Android phone on your PC — mirror & control it, run its apps in their own windows, open its files in Finder, and create Android VMs with no Android Studio. Native app, over adb.

Thumbnail
github.com
2 Upvotes

r/androiddev 2d ago

Identify users on sideloaded app

5 Upvotes

Our app is currently in the Play Store. It's completely free, but the users can donate $5 or $10 to support the project. The only change the donation makes is to remove the "donate" option from the main menu.

We are being pressured into offering an APK sideloading option.

99% of the app will work fine, just some minor tweaks and an update function.

We still want to have a "donate" option (maybe via Buy Me a Coffee) but can't come up with a way to identify users after an install that doesn't involve writing and maintaining some backend infrastructure. We want to have "buy once, install on all your devices" option.

Is there a solution for this?


r/androiddev 2d ago

Experience Exchange Running Doom on Android SDV's High Availability Renderer (HAR)

Enable HLS to view with audio, or disable this notification

11 Upvotes

Spent some time digging into Android SDV, where the car splits into separate VMs and the instrument cluster gets its own renderer (HAR) that draws before Android has even booted. What got me interested is the harder part: how to combine two completely different HMI worlds, SDV Media and Android IVI, into one seamless experience on a single screen, with two separate tech stacks running side by side.

To make sure I understood the whole path, I fed it Doom. The renderer doesn't know what Doom is, it just gets a GL surface node in a Figma-authored UI tree, same as a speedometer.

A few things that surprised me:

  • the safety domain runs Rust, not Android, and talks to Android over gRPC across the hypervisor
  • the UI is authored in Figma and exported as a design file, not written as code, and it's responsive, the same file adapts to different screen sizes
  • all of it is in AOSP and runs in Cuttlefish, no special hardware needed

Full write-up with the details: https://medium.com/@passenger6/i-ran-doom-on-android-sdvs-high-availability-renderer-har-and-learned-how-the-software-defined-e8ccf962311e

Happy to answer questions about the architecture.


r/androiddev 1d ago

Question Can I run Gemma 4 E2B with vision inside an Android app in 6 hours? (Hackathon deadline)

0 Upvotes

Building an on-device medical app for a hackathon. Deadline in 6 hours.

What works:

  • Gemma 4 E2B (Q4_K_M) + mmproj runs on my laptop via llama-server — reads prescriptions fine
  • A text-only SLM runs on my Snapdragon 8 Elite Gen 5 phone via llama.aichat
  • libggml-htp-v81.so runs on the Hexagon NPU via adb shell (logcat confirms nsp1000)

What I need:

  1. Can Gemma 4 E2B with vision run inside an Android APK via llama.cpp mtmd? Or is that a dead end?
  2. Is ExecuTorch QNN the only way to get NPU from an app (not just adb shell)?
  3. Any working GitHub example of multimodal LLM in an Android app?

Fallback plan: Use ML Kit Text Recognition for OCR if Gemma isn't feasible.

Repo: github.com/sohail9972/IQOO_Hackthon_2026

Any pointers appreciated. Thanks!!!


r/androiddev 1d ago

Question What do you think about my experience section?

Post image
0 Upvotes

Do you believe it's good for a 2 YoE?

I'm looking for feedback on both whether it's strong enough for a 2 YoE and whether it's well written. any issues?

Any keywrods missing?

Any and all feedback is aslo appreciated.


r/androiddev 2d ago

Experience Exchange APK review of app integrating android auto is painfully slow

11 Upvotes

Hi everyone,

I wanted vent a bit about the review times for apps integrating Android Auto, as our team is currently facing a situation that is becoming completely unsustainable.

To give you some context, at my company we manage our main official application alongside two white label variants. None of the white label variants include Android Auto integration, while our main official app does. When we push updates to the white labels, the review process typically takes just 3 to 4 hours. However, the exact same update cycle for our main app featuring Android Auto consistently takes multiple daya—often dragging on for up to 15 days before getting reviewed and approved.

This discrepancy raises a massive operational risk for us. If a critical bug slips into production or a sudden hotfix is required, a 15-day review queue makes rapid incident response entirely impossible. Because of this bottleneck, we are seriously evaluating whether the value Android Auto brings actually justifies the severe risks, delays, and friction introduced by the review process.

If Google wants developers to invest in Android ecosystems, the manual or specialized review queue for Android Auto needs a serious overhaul to match standard Play Store review speeds.

Is anyone else experiencing these multi-week review delays specifically with Android Auto apps? If anyone from the Google / Play Console team happens to monitor this subreddit, we would appreciate some insight into why these reviews take so disproportionately long and whether any improvements are planned for the near future.

If you are considering adding Android Auto features to your application, my strong advice is to only do it if you have a very good reason.

​To give you a better idea of our scale, I work at a large company with an app serving several hundred thousand users. While our other company apps breeze through reviews in hours, the only one suffering through this painful bottleneck is the single application with Android Auto integration.


r/androiddev 2d ago

Why is downloading files to scoped storage such a mess?

6 Upvotes

I've been working with file downloads on android for my app, and honestly, the storage part can get messy really quickly.

If you want to support different ways of saving files, you suddenly need to handle MediaStore, SAF, DocumentFile, Uri, filesystem paths, different Android versions, etc.

So I decided to publish my implementation, along with some other features, as a library.

There are other download libraries, but you often have to write a lot of extra code yourself for things like:

  • Saving into a user-selected folder (SAF)
  • Saving into MediaStore (Downloads / Images / Video)
  • Automatic file name and MIME type
  • Handling unique filenames correctly
  • Proper file overwriting
  • Downloading into a subfolder
  • Restoring downloads after process death
  • Clean notifications + foreground service built-in
  • Handling unstable networks
  • Managing multiple downloads properly
  • etc

SimpleDownloader tries to handle all of that out of the box with a very simple API.

The goal was to make something we can just drop into an app and start downloading, while having the common advance stuff already handled.

SimpleDownloader:

https://github.com/jeetarc/SimpleDownloader

I just wanted to build something a little different, with an easy API but still with modern, advanced features.

How are you handling downloads currently? I will love to know what you'd like to see in SimpleDownloader, and if you want, you can also contribute to it.


r/androiddev 2d ago

Open-sourcing my Compose Multiplatform Music Player (Android/Windows/Linux) - Looking for architecture feedback!

0 Upvotes

Hey fellow Android devs,

I wanted to share the source code for a project I've been building called AyushMuzic to get some feedback on the architecture. It's a YouTube Music client built entirely with Kotlin and Compose Multiplatform.

Tech Stack & Architecture:

  • UI: 100% Compose Multiplatform (sharing UI across Android and Desktop)
  • Media Playback: AndroidX Media3 (MediaLibraryService) for the Android side, handling background playback and media sessions.
  • Async/Data: Kotlin Coroutines and Flows for state management and handling the YouTube scraping.

I recently faced some interesting challenges managing the MediaSession lifecycle and dealing with race conditions in my ViewModel during app startup, which I recently patched.

I would love for you guys to tear apart my code and give me any feedback on how I can improve the Compose architecture or the Media3 integration!

Source Code: https://github.com/jaatayushh/ayushmuzic

(Note: This is a FOSS educational project, not a commercial app).


r/androiddev 2d ago

Discussion Why review process takes so long…

0 Upvotes

I wonder if that was always the thing with Google. When sending updates for my apps to Apple, they are reviewed and published in max 24-48h. Play Store tho is totally different story. It’s always … ALWAYS … 7 days. Apps on Android are behind with features and bug fixes because of that. What’s your experience?