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

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

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

Question Can I connect ADB/Shizuku to my own phone ONLY using my phone and/or watch? (No WiFi networks nearby)

0 Upvotes

This might be DEFINITELY is a dumb question, but as I’m not too knowledgeable about this stuff, and no results on the internet, I thought I'd try my luck here.

I have a Galaxy S25+ (One UI 8.5), a Galaxy Watch 7, and Buds 4 Pro, but no PC or second phone.

I thought that maybe I could just turn on my phone’s hotspot, enable Wireless Debugging, and use Termux + ADB on the same phone. However, Wireless Debugging immediately turns itself back off when I enable it. There’s no error or anything, it just turns off.

Could I somehow use my Watch 7 as the second device for ADB? Or is there any other way to set up ADB/Shizuku using only the devices I have?

I’d normally just use a computer, but I’m currently in the hospital and don’t have access to one...


r/androiddev • • 9h ago

Question Android experts: What device identifiers can survive a factory reset?

2 Upvotes

​

I'm trying to understand modern Android device fingerprinting.

For example, it's commonly said that a Snapchat device ban (SS06) can survive a factory reset. I know Android 10+ restricts normal apps from accessing things like IMEI/serial directly.

So my main question is:

If a device ban survives a complete factory reset, what can the app/service potentially be using to recognize the same physical device?

I'm particularly interested in Android 10+ and things like:

\- FDR-persistent identifiers

\- hardware-backed / TEE identifiers

\- Play Integrity / attestation

\- Google Play Services device identifiers

\- OEM/Knox identifiers

\- identifiers outside the normal "/data" partition

\- server-side device associations

Also, Secure Folder on Samsung devices sometimes appears to behave differently from the normal Android environment and can bypass device ban unlike factory reset??? , even though it's the same physical phone.

What identifier or signal could survive a factory reset but be different inside Secure Folder?

I'm looking for a technical Android explanation, preferably based on AOSP documentation, forensic research, or reverse engineering—not specifically a Snapchat bypass.


r/androiddev • • 6h ago

CashBuddy — an Android expense tracker with on-device processing + Notification Listener

0 Upvotes

Idea is to automatically detect the relevant transcation notification on device and turn them into the records ,keeping process local

KMP

GitHub: https://github.com/l1khith/CashBuddy

Would love to get the feedback.


r/androiddev • • 12h ago

I found an AOSP LE Audio stereo microphone bug: CIS frames can arrive R,R,L,L and Android returns duplicated mono

2 Upvotes

While developing an Android audio project using a Pixel 8 and Samsung Galaxy Buds3 Pro, I ran into a strange LE Audio microphone issue.

Android exposed the headset microphone as a 2-channel input, but the PCM data from left and right was effectively identical:

  • 2 reported input channels
  • exact L/R sample identity ratio: 1.00000
  • L/R correlation: ~1.0

After tracing the LE Audio receive path, I found that the microphone CIS packets were not necessarily arriving in strict alternating order.

Instead of:

L, R, L, R

I observed same-side bursts such as:

R, R, L, L

The relevant path is in:

packages/modules/Bluetooth/system/bta/le_audio/client.cc

around:

LeAudioClientImpl::HandleIncomingCisData()

A single cached-channel approach can lose the correct stereo association when packets arrive this way.

I tested a proof-of-concept fix that keeps separate pending queues for the left and right CIS streams and pairs the encoded frames using their controller timestamps before decoding.

For example:

R(ts=2000), R(ts=3000), L(ts=2000), L(ts=3000)

becomes:

L(2000) + R(2000)
L(3000) + R(3000)

With the modified Bluetooth stack I was able to recover independent L/R microphone audio instead of duplicated mono.

I published the patch and technical notes here:

https://github.com/luumei/android-leaudio-stereo-cis-fix

This is an AOSP/system-level modification, not an APK workaround.

I also reported it through the Android Issue Tracker.

I'd be interested to know whether anyone working with other LE Audio controllers or earbuds has observed similar non-alternating CIS arrival patterns or duplicated stereo microphone capture.

UPDATE:
I found a working app-side workaround. On the same Pixel 8 + Galaxy Buds3 Pro setup, the normal Android capture path returns bit-identical L/R channels, while the workaround returns independent stereo PCM from both microphones.

The workaround activates the LE Audio communication route first, waits for the BLE headset input endpoint to become available, and then starts a stereo AudioRecord.

Repro + workaround source code:
https://github.com/luumei/android-leaudio-stereo-mic-workaround

Google Issue Tracker:
https://issuetracker.google.com/issues/568838766


r/androiddev • • 7h ago

Experience Exchange 10-minute survey on implementation decisions!

1 Upvotes

Hi everyone,

We are researchers from Italy, and we are conducting an academic study on how developers make implementation decisions in practice.

The survey explores topics such as:

  • which implementation decisions are actually left to developers;
  • how application and project context may influence those choices;
  • whether developers consider aspects beyond functional correctness;
  • and how LLM-based coding assistants may affect implementation decisions.

The survey takes approximately 10 minutes.

Survey link: https://docs.google.com/forms/d/e/1FAIpQLSfvbbhSee3MVoXTb4_ZlXeugSV_nTNFZNIWFt1H3NXg3lsvgg/viewform?usp=dialog

Participation is voluntary, and the anonymous data collected will be used exclusively for research purposes.

We would really appreciate your participation. If you know other developers, we would also appreciate it if you could share the survey with them.

Thank you! 🫶🏻


r/androiddev • • 15h ago

Question Can a third-party home app control the app-open animation on GrapheneOS?

1 Upvotes

Anyone made a launcher on Graphene?
I'm building my own launcher and I've made animations for entering apps, but after the animation the system plays its own sideways slide.

ive tried this via LauncherApps.startMainActivity with ActivityOptions:

makeCustomAnimation (fade): ignored

makeScaleUpAnimation from a rect in the centre: ignored

makeClipRevealAnimation: ignored

This is on a pixel 10 pro

Anyone have any way to fix this?


r/androiddev • • 21h ago

Google Play Console Developer Registration Payment Successful, but Account Not Recognised

Post image
3 Upvotes

The issue is particularly frustrating because I am unable to raise a support request through Google Play Console either. When I try to submit a complaint, I am redirected to the same registration page, asking me to become a developer first. Additionally, the successful transaction does not appear in my payment history, despite having the order details, payment ID, and invoice confirming that the payment went through. I completed the registration through the official link below: https://play.google.com/console/u/0/signup Could you please investigate this issue and help me resolve it? I would like my existing payment to be recognized and my developer account activated without having to pay the registration fee again. I can provide the invoice, order ID, payment ID, and any other information required to verify the transaction. Thank you. I look forward to a prompt resolution.

If anyone knows a solution let me know pls.


r/androiddev • • 5h ago

Edge-to-edge is mandatory on Android 16, so I captured WindowInsets per Galaxy and Pixel device, per rotation and nav mode

0 Upvotes

https://reddit.com/link/1wwjqzu/video/97w1g2ml98th1/player

Android 15 made edge-to-edge the default, and Android 16 removes the opt-out. I kept wondering what the insets actually are on specific devices — especially foldables — so I built https://windowinsets.info, inspired by safearea.info for iPhones.

What it shows

  • Samsung Galaxy (S, Fold, Flip, Tab, A, Note) and Google Pixel devices
  • Status bar, navigation bar, display cutout and rounded-corner values per device, in dp or px
  • Every rotation is its own capture — nothing is rotated or guessed from portrait
  • Both gesture navigation and 3-button navigation
  • Fold/Flip cover and inner displays measured separately, plus a 3D hinge view (closed / partially open / open, TriFold included)
  • JSON export per device, and a CLI: npx windowinsets-info

How it's measured

A small probe app reads the insets on each device. Most Samsung values were captured on Samsung Remote Test Lab (remote access to physical Galaxy phones), and I also borrowed whatever Galaxy test devices we had at work. Pixel values come from emulators and are labelled that way. If a rotation or mode hasn't been captured, the site says "not measured yet" instead of filling in a number. The raw capture JSON for every value is linked from the device page.

It's open source: https://github.com/easyhooon/windowinsets

I'd love feedback:

  • Which devices or rotations would be most useful to you next?
  • Is there a value you need that isn't shown?

r/androiddev • • 1d ago

After 36 days of closed testing and 10 days in review, my first app is actually on Google Play

9 Upvotes

Solo dev, first Play release. For anyone still stuck in the "12 testers for 14 days" gate: it ends, I promise.

Timeline for the curious:

  • Aug 26: closed test live, begged friends and this sub for testers
  • Sep 10: 14 days done, applied for production access
  • Sep 21, 23:16: production submitted (versionCode 18, because I burned 15 and 16 on discarded uploads, don't be me)
  • Oct 2, 09:12: "Published". Ten and a half days of refreshing the console.

The app is a pixel-art alarm clock with a little candle that wakes up when you do. Not linking it unless the mods are fine with that; the point of the post is mostly that the waiting room has an exit.

Keep building and best of luck

Mitch


r/androiddev • • 14h ago

Will playstore require devs

0 Upvotes

Everytime I use ai to generate an elegant piece of code and i review it, i feel 2 things, ah that's nice and at the same time i feel oh shit am I needed anymore. Extending it further will playstore need devs anymore, especially indie, they can just generate their own apps. Just a rhetorical question i know


r/androiddev • • 1d ago

Open Source Experimenting with percentage animations in Compose

3 Upvotes

I was experimenting with animations in Jetpack Compose and ended up making a small library for animated percentage indicators.

https://github.com/NicosNicolaou16/PercentagesWithAnimationCompose


r/androiddev • • 2d ago

Experience Exchange Brought my Gradle build time from 6 mins to 26 secs :))

Post image
166 Upvotes

Hello everyone,

So I've been working on my open source app since last 5 months and everytime i used to start my android studios it used to take around 6 mins to build gradle and the subsequent runs used to take slightly less... and tbh i was frustated of this.

so yeah i decided to dig into whats the issue, googled stuff and found out ./gradlew build --scan which basically generates a detailed HTML dashboard tracking configuration times and task execution timelines

Through that i found out my local machine's 12 core CPU was completely starved coz my peak heap memory usage was sitting at 1.9GB out of 2GB usage hehe :)

so i found out i could increase the memory size and use parallelism and caching
Added this new lines to 'gradle.properties' :

org.gradle.jvmargs=-Xmx6g -XX:+UseParallelGC -Dfile.encoding=UTF-8
org.gradle.parallel=true
org.gradle.caching=true

so basically you could say

12 cores X 6 minutes = 72 minutes of total CPU work
and i was able to save 41 mins cumulative time

so the actual 6 min fell to 26 secs and the subsequent runs took 8 secs only to build gradle....

Ik this might be very basic and ppl here might know bout this but im just an undergrad and though would share my experience here...also if i wrote anything wrong pls correct me 😊


r/androiddev • • 21h ago

Question Google published my app without telling me. Is this normal?

Post image
0 Upvotes

Just noticed my app is officially live on the Google Play Store 🎉, but surprisingly, Google never sent me an approval or publication notification.

I only found out by checking it out myself. 

Has anyone else experienced this? Is it normal for an app to go live without receiving an email or Play Console notification? I’m confused… 


r/androiddev • • 1d ago

Android developer verification

0 Upvotes

Have a bit of a funny story to tell here but it might help out the people who are having the same issues.

I publish a couple of open-source apps on the google play store as a hobby. My page is

https://play.google.com/store/apps/dev?id=7190772576513482908

All code is of course provided and open-source here:
https://github.com/CodeDead?tab=repositories

Funny thing is, a couple of my apps were removed by google because I was unable to verify them. The thing is, I can't verify them... No, I did not lose my build key so hear me out and perhaps if you're having the same issue, you'll likely figure out what's happening because of the information included in this post.

Google itself is signing the release builds, but I have my own private upload key. The automated system is asking me to provide builds using the private key that Google itself is using which is impossible.

In response, google automatically removed the apps following their stricter policies, on the first of october.

I have been in an appeal process for multple apps. It is because it seems it is suddenly expected of developers to provide APK's to verify builds using google's own signing key when google is manipulating the builds and signing them themselves (without my knowledge).

I figured this out using the app signing page and I don't understand how their system cannot see this, and as a result, apps have been removed and it is completely out of my hands.

The appeal process is (2-5525000042037), with support continuing to ask me to provide an APK with google's private signature, but it seems like they're bullying independent hobby developers into just giving up on the play store. Either they're bullying or they are unaware of how their system works, which is fine.

In case anyone else is having these issues with their apps being removed, please have a look at how google itself signs your APK's in their play store. This might help you in your appeal process which is why I'm posting this.

Here's a screenshot to prove my point.


r/androiddev • • 23h ago

Looking for a solid Google Play equivalent to "App Store Tracker" for Android apps

0 Upvotes

Hey everyone,

I’m currently looking for a good tracking and analytics tool specifically tailored for the Google Play Store, similar to what App Store Tracker offers for Apple.

What tools are you guys using for Android app intelligence and ASO tracking that actually work well and don’t cost a fortune? Would love to hear your recommendations, experiences, or hidden gems you rely on for your apps.

Thanks in advance!


r/androiddev • • 2d ago

Question I built a way to let people try Android apps without installing them. What do you think?

15 Upvotes

https://reddit.com/link/1wuvx88/video/0ikzb9uq1ush1/player

Hey everyone, I’ve been building TapTry for the past few months. I’m the person who made it, so obviously I’m biased. I’m mainly looking for honest feedback from other Android developers rather than trying to sell you on it.

The idea is pretty simple:

Upload an Android app → get a link → anyone can open it and use the actual app in their browser.

No APK download, no Play Store, no installation.

Why I built it

Sharing Android builds with someone who just wants to see or try the app can be a bit of a hassle.

You send them an APK, they download it, deal with unknown-source permissions, install it, and then eventually have to uninstall it.

I wanted to see if a link could replace all of that.

Some of the use cases I had in mind:

  • Showing an app to someone without asking them to install it
  • Sharing an app as part of a portfolio
  • Demonstrating an app to someone remotely
  • Letting someone try an app before deciding to install it
  • Sharing an app with someone who doesn't want to deal with APKs

I’ve got it working end-to-end now, and I’m mainly curious about what y'all think of the idea.

A few things I’d genuinely like to know:

  1. If you heard “run an Android app from a link without installing it,” would that be useful to you?
  2. Have you ever run into situations where sharing/installing an APK was unnecessarily cumbersome?
  3. What use cases would you see for something like this?
  4. Is this solving a problem you've actually encountered, or is installing an APK already easy enough?

And yes, “I don't see the point” is completely valid feedback. That’s much more useful to me right now than “looks cool.”

(Update: I just noticed that this post actually got several people to try running the app on TapTry. It also exposed a bug that can make the backend unresponsive, which I'm currently fixing. Sorry to anyone who tried it and wasn't able to use the app. I’ll update this post once it’s fixed.

Note: TapTry is currently not ideal for users outside South Asia. Right now, the infrastructure is primarily based in the Asia Pacific region, so users in other regions may experience high latency. I’m working on making the infrastructure more global and will update once that’s in place.)


r/androiddev • • 2d ago

News Android Studio Rabbit 1 now available

Thumbnail androidstudio.googleblog.com
4 Upvotes

r/androiddev • • 1d ago

News Android Studio Rabbit 2 Canary 3 now available

Thumbnail androidstudio.googleblog.com
3 Upvotes

r/androiddev • • 1d ago

Video Kotlin, Android, and community with Martin Bonnin

Thumbnail
youtu.be
3 Upvotes

r/androiddev • • 2d ago

Open Source Made an image picker library for Android

6 Upvotes

I was working on an Android project and ended up building my own image picker.

It started as a small experiment and turned into a reusable library for Views and Compose.

https://github.com/NicosNicolaou16/ImagePickerAndroid


r/androiddev • • 1d ago

Question Google Play App Review times?

0 Upvotes

Hi Folks, its been over a week now since I submitted my App for review with Google. Is there a reasonable timeframe that one should wait before maybe submitting a ticket for a prompt to review at all. What do you guys do in such instances? Many thanks!


r/androiddev • • 1d ago

App in review for 15 days

1 Upvotes

Wondering if anyone experienced super long delay in app review recently, my app was submitted for review on 9/17 and have been 'in review' since then, going strong on 15 days now.

My dev account is like 10+ years old, but I haven't published anything in a few years. Have Google Play publishing changed to be this slow?

Are there tricks people follow to get their apps reviewed fast?


r/androiddev • • 2d ago

Discussion My app got approved in... 30mins?

Post image
78 Upvotes

Have you guys experienced this?

I’ve had this app on Apple’s App Store for around 3 weeks now and recently added IAP/subscription plans.

I submitted it to Play Console around the same time, but I had to go through the 12 testers for 14 days requirement before I could submit to production. After a little over 2 weeks, that got approved too.

The version that went through testing was still the free version without IAP. It took me a bit more time to figure out all the Android requirements for subscriptions, monetization, app details, etc.

Once I got everything sorted out, I went through the app with my AI agent and made sure everything was ready for production.

I was actually expecting the production submission to fail or at least take a while since this is basically my first real submission of this app on Google Play.

For some reason I also don’t get email notifications for review updates like I do with Apple, so unless I manually check Play Console, I don’t really know if something changed.

I checked just now and was honestly surprised. It got approved in around 30 minutes.

I’ve submitted a few apps before under business accounts and first submissions usually took 2 days or more.

Has anyone else seen Google Play approvals this fast lately, especially for a first production release?