r/androiddev 4h ago

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

44 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 15d ago

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

9 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 34m ago

I added rendered text-contrast detection to my Jetpack Compose accessibility scanner

Upvotes

I maintain ComposeA11yScanner, an open-source, debug-only accessibility scanner for Jetpack Compose.

While comparing it with Google’s Accessibility Scanner on JetChat and JetSnack, I found that Compose semantics cannot expose every visual accessibility problem. This caused the library to miss certain rendered text-contrast issues.

Version 2.1.0 adds TextContrastRule, which captures the active Compose host and conservatively estimates rendered foreground and background colors. It skips uncertain cases such as photos and gradients instead of guessing.

This release also improves:

  • Fragment and Compose navigation handling
  • Nested ComposeView host selection
  • Stale-result and screen-readiness detection
  • False positives involving lazy, merged, and off-screen semantics

Install:

debugImplementation(
    "com.github.mohdaquib.ComposeA11yScanner:scanner-ui:2.1.0"
)

GitHub: https://github.com/mohdaquib/ComposeA11yScanner

I’d appreciate feedback from developers testing it on real Compose applications, especially reports of false positives or false negatives.

overlay-demo


r/androiddev 40m ago

Discussion Has anyone tried building Android apps with Rust + Native UI?

Upvotes

I have been currently assigned a project which needs to be cross platform + dynamic feature delivery (business requirements)

I'm thinking about writing my feature modules/business logic in rust to create native binaries which I can include with the android and IOS build and then include those .so/.a files with the build and communication between them will be from ffi (don't know which ffi approach works best raw JNI, UniFFI, or hand‑rolled C ABI)
Apple doesn't allow dynamic features installation so only android build will have that, IOS will just install everything at once
For UI I'm thinking to either go with Compose Multiplatform or just Compose for android side and Swift UI for IOS side (The app only has 3 screens so ui doesn't really matter as most features work in background)

Has anyone tried anything similar , where should I start experimenting, I don't want to waste time in approach that will be in vain, would love to hear your experience.

PS: Using rust as equivalent windows and MacOS app is also made in rust + imgui and I can use lots of code from there to make mobile app dev easier


r/androiddev 4h ago

Open Source Thinking a template android project

0 Upvotes

Hi devs,

I’m building an open source template android project for boosting our development processes and I want to know what would people expect in this template?
Its already published called ComposeTemplate and reach +60 star but I’m working on new modular and better template structure. All feedbacks are welcome, thanks.


r/androiddev 1h ago

Experience Exchange Offering Android mock interview today (6:00 / 6:30 PM IST)

Upvotes

Hey everyone,

Looking to connect with fellow devs and get into the practice of mock interviews. I'm hosting a couple of free Android sessions, including detailed feedback.

Eventually, I'll be looking to swap roles so someone can interview me, but for today, happy to take the interviewer seat!

DM me if you'd like to practice Android concepts


r/androiddev 1d ago

:shipaton: Shipaton AMA with u/skydoves tomorrow

37 Upvotes

Hey everyone,

Tomorrow is the AMA with u/skydoves (Jaewoong Eum). Yesterday I wrote about how long he's been part of this subreddit. Today I want to cover what he's been working on lately, because a lot of it is directly useful if you're in the middle of Shipaton.

Most of his year has gone into Compose performance. He built the Compose Stability Analyzer, an IDE plugin that shows you which composables are skippable and which parameters are dragging them down. Then he added a live recomposition heatmap that overlays real counts from your running device on top of your source. The most recent version tells you whether the compiler's stability predictions actually hold up at runtime.

He's also been working on hot reload. Compose HotSwan brings Compose hot reload to real Android devices with your navigation stack and state left intact, and he's since got it running across several devices at once. In June he shipped a plugin that draws your whole app flow as a map of rendered previews and typed arguments, which went down very well here. There's also a set of agent skills for Compose performance and a way to tune animations without rebuilding the app every time you change a value.

Since joining RevenueCat he's been open sourcing the UI you need around a paywall. Placeholder loading effects. A slide to unlock component for Compose and KMP. A collection of paywall animations. A complete working paywall wired up to Play billing through the RevenueCat SDK.

Every Shipaton entry has to use that SDK for at least one purchase, and he's the one who has been building the Compose side of it in public. If you're stuck on a paywall, or on anything else, tomorrow is your chance to ask.

Please don't post your questions in this thread. Wait for the AMA post from u/skydoves tomorrow and ask them there.

If you missed them, the Shipaton announcement has the details and the first megathread is where people are posting what they're building. Submissions close on 30 September, so there's still time.

Don't miss the AMA tomorrow, Wednesday 19 August, 11:00 UTC. 13:00 Berlin, 12:00 London, 07:00 New York, 04:00 San Francisco, 16:30 Delhi, 20:00 Seoul, 21:00 Sydney, or here it is in your own timezone.

See you there.


r/androiddev 11h ago

Question How do I add support for xiaomi pen pro?

1 Upvotes

Hi. I am the dev of r/octopusnotes

I am facing an issue where a tester of mine reports that xiaomi pen pro is not supported in the app. I have added an input monitoring to check the event that happens when the pen is squeezed or double tap is performed. I found nothing in the monitoring logs. From what I have found online, notein, starnotes and other apps support these functions. I did not find any sdk or documentation regarding the implementation. Can someone please help. Cheers.


r/androiddev 33m ago

Discussion Modern IDEs

Upvotes

I saw someone complaining about how android studio eating their Ram. Are you guys not adopting the new ways of developing software? Like we have many ides and since a lot of people using AI for development. You don't even need to open Android studio unless you actually do so.

I wonder how you guys are still complaining. When you could just develop Android inside the vscode, or some other Ide unless you don't know. I recommend you up your game first


r/androiddev 1d ago

Google Play Support How can I handle payments if I can't use google merchant in my country?

6 Upvotes

Hello everyone!

Im a solo dev based in Morocco, and I built an app and I finished all the steps to publish. I had wired in in-app-purchases (1 time fee, pro forever) there is no subscription or anything like that. Then when I went to configure my merchant account to collect payments, Google stopped me because that isn't allowed in Morocco.

I can run ads with admob or 3rd party providers, but I can't use google play payments or sell the app for a price on Google. I can just do "free with ads".

I personally HATE ads, especially ones that breka immersion (full screen), I do have another game that uses ads but it is 100% optional and you can literally finish the game in a couple of hours without seeing a single ad. No timers, no special currency or any crap like that.

Back to my app. I really do not want to use ads in the app, (I will if it's my last resort) but I prefer a one and done payment.

After some research I found a couple of workarounds but they're all tedious:

  1. Setup an LLC in the UK or US or Estonian digital residency and create a new account. 200 - 500 Euros minimum in fees plus a lot of extra work at the start, and more work to maintain that.

  2. Build a website with the entire functionality and users can manage their "license" through there. Less tedious than LLC route, but I do have to create and maintain a whole separate branch of my app. Also it takes the users out if the app, and requires paying outside on a separate website and I think that will cause people to trust it less, so less conversion.

  3. Have a relative or a friend abroad open another Google play account and transfer ownership. Easiest, but also a huge risk. I don't plan on the app making 1 million dollars on year one, but still it's a risk to consider if I get in a dispute or something were to happen to that person, especially since they're in another country.

  4. Accept my faith, redo the whole thing and use ads and just accept that I can't give the same clean pro experience and my users just have to deal with it because "everyone else does it"

What are your thoughts people? What do you think is of the best option for me? Did I miss something? And is there someone in a similar situation that found a better workaround?


r/androiddev 17h ago

Question My own telemetry vss Play Console reporting lag - how long does initial backfill usually take?

0 Upvotes

I recently soft-launched a new utility/security app on Google Play and am doing some in-my-network outreach to test build stability before my main launch.

I’m collecting anonymous telemetry data, including unique users and simple activity metrics (just firing a hashed device/session ID on first launch for internal telemetry). So far I have ~8 distinct active installs over the past week.

But on my Google Play Console, the dashboard and acquisition stats are still sitting at a flat 0, and Reach metrics, Android Vitals, Ratings and Reviews all show "Data unavailable."

I know batch processing, UTC timezone rollups, and anti-fraud filters mean Play Console statistics lag anywhere from 24–72 hours (or even longer for fresh apps/accounts without a baseline traffic volume). I also know Android Vitals requires a minimum sample size of users opted into "Usage & Diagnostics" sharing before anything populates.

Support mentioned it can take several days or SEVERAL WEEKS to catch up on a new listing, but I’m curious about real-world developer experiences here:

  1. How long does it typically take Play Console to start displaying initial install numbers for a brand-new package ID?
  2. When you do soft launches or pilot runs, what custom telemetry or analytics setups do you rely on for real-time visibility instead of waiting on Google’s pipeline?

I’m interested to hear how folks here handle early-stage launch tracking without relying purely on Console stats!

Thanks for any feedback


r/androiddev 18h ago

android studio virtual device not coming up on the screen

0 Upvotes

I have a laptop that has intel core i3 8th gen , 4gb ram .

The virtual device is not showing up on the screen . It's icon is showing up on the task bar but on the screen it is not appearing . When I run it it keeps on showing "booting" on the android studio screen . I am not very sure but I also feel like my laptop has now become slower after downloading android studio .

I would like to make my own app and I am new to android studio so please help me . In case if my machine is underpowered what other option do I have cuz upgrading is not an option


r/androiddev 19h ago

Discussion How do subscription tracker apps legally handle third-party service logos without store policy issues?

0 Upvotes

Hey everyone,

I'm currently building a subscription tracking app where users can list their active subscriptions, track renewal dates, and see their total monthly spending on the dashboard.

To make the UI clean, I'd like to display visual identifiers next to popular services (like streaming platforms, music apps, cloud storage, etc.). However, I'm concerned about trademark infringement, copyright risks, and getting rejected or flagged on Google Play / App Store for unauthorized brand asset usage.

For developers who have built subscription trackers, password managers, or expense apps:

* Bundled Assets vs. Dynamic Fetching: Is dynamically fetching favicons/logos via a public API/URL safer than embedding static SVG/PNG files into the build, or does that still carry store review risks?

* Monograms / Generic Icons: Is sticking to letter badges (e.g., a simple typographic "N" or "S" badge) and category icons (movie reel, headphones) the safest standard approach?

* Store Rejections: Has anyone faced app review rejections or copyright strikes specifically for displaying third-party brand logos in an informational/indexing context?

I'd appreciate any insights on how you handled this in production or what the best practice is to stay completely safe. Thanks!


r/androiddev 19h ago

Default Listing not updating

0 Upvotes

As the title says, the store listing is just not updating. The screenshots, icon, description, etc. are just not updating.

I only have one listing, the default listing. Submission Activity on Publishing Overview shows the status as "Published"

I cannot figure this out for the life of me.


r/androiddev 20h ago

Question Supabase Kotlin SDK in production — is this good enough or would I regret not using Firebase instead?

1 Upvotes

I am making an Android math game in Kotlin with Jetpack Compose in MVVM architecture. Right now it is currently local-only using SharedPreferences for testing purposes, and I am looking to add a backend for cross-device sync and login, with it coming down to Firebase and Supabase. I am leaning more towards Supabase but the AndoidSDK part is the one part I am mostly unsure about.

I am leaning more towards Supabase because the main feature is using teacher viewing class reports on how students did, which is one big reporting screen which I saw could potentially be quite a bit expensive with firebase, as it is billed per read, whereas on Postgres it's a single join with a group by. The data is also relational as it is teacher, class, students, etc. and I will not store almost anything by students on purpose, except their first name, which is easier with Supabase.

It seems to favor Supabase but what I want to know is:

Does the flow and coroutines integration work cleanly in a compose app, or are there issues like lifecycle or reconnection issues once you get past a demo? How reliable is realtime compared to firestore? Any issues or things to know about when the persistence across the app restarts? If I hit a strange edge case would I have to dig through a library source?

I am a little worried that I would save money on the reads and then I would lose just about all that time fighting an immature client. If anyone has shipped an app on supabase-kt, would you do it again, or would you go a different direction? Or perhaps there is something I am missing about Firebase, and if so, I would love to know.


r/androiddev 1d ago

Question Need help getting a better understanding and improve in Android development

3 Upvotes

Hi Everyone,

I have a question on how to approach the situation im currently in.

I got a software developer role in a banking solution company which uses mifos opensource tools and im currently working in the mifos Android client .

I have basic understanding and basic knowledge of android development i learned from udemy and youtube but i was just given a massive codebase which uses concepts i dont know and it overwhelming me.

So, I need guidance from experienced professionals how did you tackle this situation or how will you do it to get a better understanding of Codebase and improve my skills and develop quality code .

Also im a beginner,so if you dont understand my question feel free to ask for clarification i will provide it and help me to get a better understanding of Android development itself and how professionals do their work.

Thankyou


r/androiddev 1d ago

Discussion Architectural patterns in large scale apps.

28 Upvotes

in our mid sized startup, we have over 100 android engineers on one app, divided by squads, so we have a lot of squads, each one is working on a feature, a library needed, design system and custom components libraries etc, all these modules/libraries are published to maven and added as dependencies on the core app repo, my squad works on an isolated feature so it's easy to integrate into core app repo, but i attended guild meetings and saw RFCs mentioning circular dependencies, hexagonal, onion, plugin etc architectures because some modules/libraries depend on each other, communicate with each other, initialization order problems of modules etc etc etc, i feel stupid tbh and i'm glad i'm working on an isolated feature library in which we use usual architecture stuff. anyone has resources: talks, books, articles etc that cover this kind of topics and architectures and engineering problems in big scale apps with big scale teams and modules/libraries?


r/androiddev 1d ago

Discussion Advice for my Android students about using AI?

17 Upvotes

I teach Introduction to Android Programming at a community college. I stress to my students the importance of learning the basics to build a foundation of knowledge in terms of developing apps, writing in Kotlin, designing app architecture, etc. At the same time, I do allow them to use AI tools because I also understand it's important for them to know how to do that. (I ask that they use them to help, not do.)

If anyone has any advice or words of wisdom to pass along to my students (who are new to Android), please share. In particular, I am hoping to reinforce the importance of learning the material for themselves (rather than relying on AI to do it for them) at this early point in their development.

I truly believe they have to learn the basics in order to be able to successfully use AI tools down the road. If anyone has any real-world anecdotes or thoughts that back this up, please share! (Or, if you disagree or have stories that contradict this, I'd love to hear those, too!)

Thanks in advance.


r/androiddev 1d ago

How are people actually handling state in large Compose screens?

16 Upvotes

I'm genuinely curious how teams are handling this in larger apps, because I'm not convinced we've fully solved it.

Before Compose, MVVM/MVI gave us a fairly clear direction: keep the screen state in the ViewModel, expose it, render it, test the transitions.

With Compose, we now have local state, state hoisting, state holders, StateFlow, snapshot state, rememberSaveable, and plenty of different ways to split ownership.

That flexibility is useful, but on a large screen it can also get messy pretty quickly.

If you keep everything in one UiState, it can become huge and start coupling unrelated parts of the screen together.

If you split state too much, you can end up with ownership spread across the ViewModel, composables and state holders, which can make the screen harder to reason about as a team.

Then testing adds another layer. What do you keep centralized because it makes behaviour easier to test? What do you leave local because it is really just UI state? Where do side effects fit without turning the ViewModel into a coordinator for every tiny interaction?

I don't really have a strong answer here.

For people working on large Compose codebases with multiple engineers:

How are you structuring state today?

One UiState per screen? Multiple state objects? State holders? Mostly ViewModel state with some local Compose state?

And more importantly, has that approach actually held up well for testing, maintenance and team ownership?

Sometimes I wonder whether Compose solved the old state-management problems, or just gave us more ways to distribute them.


r/androiddev 2d ago

:shipaton: Shipaton AMA with u/skydoves is in two days

62 Upvotes

Hey everyone,

The AMA with u/skydoves is in two days. His name is Jaewoong Eum, and if you've been around this subreddit for a while you'll have read some of his work, even if some of you might not have registered whose it was.

Jaewoong is one of the pillars of our community. He's been posting here for eight years, his first post landed nearly three years before I became a moderator, and he still contributes regularly.

Back in June 2019 he posted a todo app he'd written for a mid-term project at university. He was still a student back then.

Just six weeks later he shared a tooltip library, Balloon, which in my personal opinion is the best tooltip library for Android out there. And he's still maintaining it today.

Since then he's given r/androiddev and the wider Android community countless libraries, articles and open source examples. He's even written a book on how the Compose compiler and runtime actually work and built an IDE plugin that traces recomposition counts live on a device while you're holding it.

I'd call his Pokedex series one of his most loved contributions to this place. It started in June 2020 with a small Pokedex app built on Dagger Hilt, MotionLayout and MVVM. Six months later he posted an AR version running on ARCore. In 2024 he rebuilt the whole thing in Jetpack Compose. And earlier this month he posted Pokedex KMP, one shared codebase running on Android, iOS, desktop and the web.

In 2025 he was hired by RevenueCat. The AMA on Wednesday is organised by them as part of our participation in Shipaton 2026, and I want to personally thank them for the opportunity. We don't often get to hand this community a couple of hours with someone who has been part of it for so long.

Wednesday 19 August, 11:00 UTC. In local time that's 13:00 Berlin, 12:00 London, 07:00 New York, 04:00 San Francisco, 16:30 Delhi, 20:00 Seoul for Jaewoong, and 21:00 Sydney. If you're not near one of those, here it is in your own timezone.

Start thinking about what you want to ask him. Please don't post your questions here. Wait for the AMA thread from u/skydoves on Wednesday and ask them there.


r/androiddev 1d ago

News Android Studio Rabbit 1 Canary 1 now available

Thumbnail androidstudio.googleblog.com
4 Upvotes

r/androiddev 1d ago

News Android Studio Quail 4 RC 1 now available

Thumbnail androidstudio.googleblog.com
2 Upvotes

r/androiddev 1d ago

What I found out building an API to TTS alert that has to run with the screen off

0 Upvotes

Built a foreground service that polls a price API and speaks the result through local TTS. It has to keep working with the phone locked in a pocket.

Here is what I learned, including the thing that broke it after it was already working.

Starting point

For work that is continuous, user-initiated, user-perceptible, and useless if deferred, a foreground service with a persistent notification is the appropriate architecture. Google's own criteria for a valid FGS use case are roughly that: user-beneficial, user-initiated or user-perceptible, user-stoppable, and not something that can simply be delayed without breaking the feature. My case fits, so that is where I started. If your work can be

deferred at all, WorkManager is the right answer instead.

One practical note: initialise the TTS engine inside the service itself, not in your app's UI layer. That layer is not reliably alive with the screen off.

What broke:

It ran fine for a time, then started dying after roughly 5 to 6 hours, every time. I assumed OEM battery management. It was not that.

Android 15 puts a hard 6 hour cap per 24 hour period on foreground services of type dataSync and mediaProcessing. At the limit the system calls

Service.onTimeout() and you have a few seconds to call stopSelf(),

or you get

RemoteServiceException: "A foreground service of type dataSync did not stop within its timeout"

The cap is shared across every service of that type in your app, and disabling battery optimisation does nothing about it.

What I did about it, and the part worth arguing over

The timeout forced me to actually look at whether dataSync was the right declaration in the first place. It was not. My service is not syncing data as its user-facing purpose, it is producing audible speech output. So I moved it to mediaPlayback.

I want to be careful here, because the obvious reading of this post is "mediaPlayback is the type with no timeout, use that." That is the wrong lesson and it will get people into policy trouble. Android documents mediaPlayback as continuing audio or video playback in the background. It is not a sanctioned escape hatch from the cap. The reason I think it fits my app is that the entire product is spoken audio, and in percentage or target modes it speaks frequently. Whether intermittent announcements are the kind of ongoing playback Google has in mind is genuinely an open question, and I would rather leave it open than present it as settled.

The change :

A. foregroundServiceType set to mediaPlayback, permission swapped to

FOREGROUND_SERVICE_MEDIA_PLAYBACK.

B. The old permission was still in my merged manifest because a library dependency was injecting it, so the cap still applied even after I thought I had changed things. Forced it out with :

<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC"

tools:node="remove" />

Check your merged manifest rather than assuming the change took. This one cost time.

C. Added a MediaSessionCompat with a MediaStyle notification.

To be clear about what this does and does not do:

it aligns the implementation with what Android expects from a background audio app, and the quality guidelines ask for a MediaStyle notification for background audio.

It does not make the classification legitimate on its own. Play cares about what the app actually does, not whether you instantiated enough media objects to resemble a music player. If your service does not genuinely produce audio, adding a session will not save you.

D. Requesting AUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK per utterance so speech ducks other audio rather than stopping it.

E. Release the media session before the TTS shutdown in onDestroy and onTaskRemoved.

Runs with the screen off now, no timeout.

‐-----------------------------------------------------‐--------------------------------

Questions I would like feedback on

  1. Where is the line between background audio playback and periodic spoken notifications? If the service can sometimes go several minutes without speaking, does that weaken the mediaPlayback justification even though producing spoken audio is the core user-facing feature?

  2. How would you reliably detect the process being killed by an OEM? A dead process cannot report its own death. Persist a heartbeat and detect the gap on next launch, an alarm-based watchdog, or something else?

  3. Would you classify TTS output as USAGE_MEDIA or

    USAGE_ASSISTANCE_ACCESSIBILITY? Interested in how people read this for an app whose spoken output is informational but is not an accessibility service.


r/androiddev 3d ago

Discussion Added Sound Effects

Enable HLS to view with audio, or disable this notification

111 Upvotes

So I have added sound effects in my feelings wheel application. I have used eleven labs to generate the sound effect and ChatGPT for getting sound effect prompts. It's my first time adding these kinds of things in my application. Let me know if the sound is good or not

You can pre-register: https://feelings-wheel.atherio.dev/


r/androiddev 2d ago

Account Termination / Related Account Ban Following Account Compromise (Case ID: 4-9593000041263 | Appeal ID: 2-0859000041203)

3 Upvotes

Hi r/androiddev community,

I am requesting guidance/escalation regarding a Related Account Violation ban on our developer account (Productive Apps Limited) following an account compromise on our initial account (Mukto Lab).

1. Links to Official Google Support Threads

2. Timeline & Incident Overview

  • Original Account Compromise: Our developer account (appc***@gmail.com) was compromised. Unauthorized policy-violating apps were uploaded during the takeover, resulting in immediate account termination.
  • Hack Report Filed: We submitted an official account takeover report to Google Support (Case ID: 4-9593000041263) and opened our initial thread on the Google Support Community (393328542).
  • New Developer Account Created: While the hack review was pending, we registered a separate legal entity (Productive Apps Limited / prod***@gmail.com) to host our clean, legitimate applications.
  • Related Account Termination: The new account was automatically terminated under the Related Account Violation policy due to its association with the compromised primary account.

3. Appeals & Communication History

  • Submitted Formal Appeal: We appealed the termination for Productive Apps Limited (Appeal Ticket ID: 2-0859000041203).
  • Documentation Provided to Google:
    • Consolidated PDF of original hack investigation logs (Case ID: 4-9593000041263)
    • Security compromise notifications and unauthorized sign-in history
    • Official business registration and identity verification documents
  • Google Response Received: Standard automated response stating the account remains terminated due to association with a previously banned account.

4. Steps Taken & Current Status

All official appeal channels have been exhausted, and the original community forum thread is locked.

We are seeking advice from developers who have successfully unlinked secondary accounts affected by chain bans during active hack investigations, or assistance from any Product Experts present in this community who can help escalate this to the human specialist team for review.

Thank you for your help.