56
Stay up-to-date with latest news on Android Development! Content directly fetched from the subreddit just for you. Powered by : @r_channels
5 Kotlin Internals You Should Know
https://skydoves.medium.com/5-kotlin-internals-you-should-know-d4bab319d4ef
https://redd.it/1r6t6rz
@reddit_androiddev
How we cut Maestro E2E test time from 34s to 14s by dropping the JVM
If you're running Maestro for Android E2E testing, you've probably noticed the overhead.
There's a JVM process sitting in the background eating \~350 MB doing basically nothing. Every command hops through multiple layers before it actually touches the UI. Simple flows take way longer than they should.
The view hierarchy is another headache — especially if you're working with React Native or hybrid apps. You write `tapOn: "Login"` and nothing happens because the text is inside a nested non-tappable view. So you end up debugging accessibility trees instead of writing tests.
We built an open source runner that fixes both:
* **No JVM** — same test, 34s → 14s. We wrote custom element resolution instead of going through Appium's stack.
* **Smarter taps** — walks up the view tree to find the nearest tappable ancestor. `tapOn: "Login"` just works whether you're using text match or testID.
* **Real iOS devices** — also got WebDriverAgent stable on actual hardware if you're doing cross-platform. Code signing, session persistence, all of it.
Same Maestro YAML syntax. We just replaced the engine underneath.
Works with BrowserStack, Sauce Labs, LambdaTest — any Appium grid. Our element logic sits on top so you skip the usual Appium speed tax.
Open source: [github.com/devicelab-dev/maestro-runner](https://github.com/devicelab-dev/maestro-runner)
Happy to answer questions about the performance stuff — the JVM overhead rabbit hole was interesting.
https://redd.it/1r69rur
@reddit_androiddev
Judge my UI
https://redd.it/1r5pap7
@reddit_androiddev
Why many experienced Android developers still struggle to crack senior interviews
Most Android developers can build screens and call APIs.
But senior Android interviews today aren’t testing syntax anymore.
They test:
• System design thinking
• Architecture trade-offs (MVVM vs MVI)
• Performance & memory awareness
• Scaling apps
• Background processing
• Networking at scale
I’ve seen many experienced developers get stuck in their careers not because they lack experience — but because they lack depth in system-level thinking.
I wrote a detailed breakdown here:
yogirana5557/most-android-developers-can-write-code-so-why-do-they-still-struggle-to-switch-jobs-5813f2a0def9">yogirana5557/most-android-developers-can-write-code-so-why-do-they-still-struggle-to-switch-jobs-5813f2a0def9" rel="nofollow">https://medium.com/@yogirana5557/most-android-developers-can-write-code-so-why-do-they-still-struggle-to-switch-jobs-5813f2a0def9
Would love feedback from other Android engineers.
https://redd.it/1r5kcie
@reddit_androiddev
🔥 Private Beta Testing Group Closing in 48h - Get Apps Early + Test Yours FREE
Exclusive group where devs test each other's apps before launch.
What's inside: ✅ Early access to apps (mine kills doomscrolling - you'll want this)
✅ FREE testers for YOUR apps (normally $500+ to get this feedback)
✅ Private dev community - real builders only
✅ First to know about launches & opportunities
The catch: We're capping at 50 people. After that, waitlist only.
Already 30+ spots taken.
Drop "🚀" NOW for instant Google Group access.
Gone in 48h. Don't miss this.
https://redd.it/1r5i2e4
@reddit_androiddev
How to create an automation for android phone.
I want to automate a task on my Android device. The task is quite complex. At first, I tried to build it using Python and an AI chatbot, but I was not successful. Now, I want to try an app that can help me create this automation.
I am looking for a free apps that can switch between apps, copying and pasting text, and detecting buttons on the screen. Suggest me something.
https://redd.it/1r5ctwj
@reddit_androiddev
Best architecture for Hybrid Android eCommerce app (Native header/footer + WebView middle)? XML or Jetpack Compose?
Hi everyone,
I’m building a hybrid Android eCommerce app.
The structure is:
Header (Native)
Hamburger menu
Search box
Cart icon
App logo
Middle section
WebView that loads our eCommerce mobile site (m-dot)
Footer (Native)
Bottom navigation with 5 items (Home, Products, Orders, Account, etc.)
So basically, header and footer are native components, and the main content is a WebView.
I’m confused about the architecture and UI approach:
Should I go with XML + Kotlin (traditional View system)?
Or use Jetpack Compose?
What architecture would best suit this hybrid structure (MVVM, single-activity, multiple fragments, etc.)?
My main concerns are:
Maintainability
Performance
Navigation handling between native and WebView
Future scalability
Would love to hear suggestions from people who’ve built similar hybrid apps.
Thanks in advance 🙏
https://redd.it/1r5bm96
@reddit_androiddev
Building a Google Maps Style Bottom Sheet with Jetpack Compose
https://redd.it/1r58dl5
@reddit_androiddev
Managing Multiple Permission-Sensitive Services in Android: My Experience
Hey
I ran into an interesting scenario in my app: I needed an Activity that switches between two background tasks, each requiring different permissions and each needing to handle Bluetooth broadcasts.
Initially, I used one service with internal mode switching, but it became messy quickly:
Each mode needed different runtime permissions.
Handling Bluetooth broadcasts for multiple modes inside a single service required complex dynamic registration/unregistration of receivers.
Managing exclusive running — only one task at a time — was tricky.
Code organization got messy: multiple unrelated responsibilities inside a single service class.
My solution
I refactored into multiple child services derived from an abstract base service:
Each child service handles its own permissions.
Each child service manages its own broadcast receivers, e.g., for Bluetooth events.
The abstract service contains a singleton reference to the currently active service.
When a new child service starts, it calls stopSelf() on the old instance before doing anything else, then updates the singleton.
This guarantees:
Only one service runs at a time.
Permissions remain cleanly separated.
Broadcasts are handled by the right service without dynamic complexity.
The code is much more organized and maintainable.
My question
Has anyone else used this pattern — multiple child services under an abstract service, each with its own permissions and receivers — to manage mutually exclusive tasks?
Would love to hear about your approaches, or if there are cleaner alternatives for exclusive-running, permission-sensitive services.
https://redd.it/1r503w4
@reddit_androiddev
What happens if the pre-register phase has ended and I can't release in time?
I'm afraid that I don't have enough time, I already got a bunch of pre-registers and don't want to lose them. But that would mean releasing early with an unfinished game. Will I lose my pre-registers if I don't release in time?
https://redd.it/1r50bct
@reddit_androiddev
I'm a teacher of 10 years who turned cancer recovery into a coding journey. Here are my first 2 Android apps!
https://redd.it/1r4gtx8
@reddit_androiddev
Gemini Agent on Android Studio
Is it just me, or is Gemini in Android Studio completely useless?
Every time I try to use it, I get timeout messages and errors.
I am using the "Agent". The "Ask" seems to be fine.
Has anyone been able to use the Agent without any problems?
https://redd.it/1r4wdl4
@reddit_androiddev
Got an Android app development question? Ask away! February 2026 edition
Got an app development (programming, marketing, advertisement, integrations) questions? We'll do our best to answer anything possible.
January, 2026 Android development questions-answers thread
December, 2025 Android development questions-answers thread
November, 2025 Android development questions-answers thread
https://redd.it/1r06soe
@reddit_androiddev
Ui designing in android studio
I am new to Android studio whts the best way to learn ui design and coding
https://redd.it/1r02jxm
@reddit_androiddev
PlayAware App
https://redd.it/1qzva5r
@reddit_androiddev
Built an offline ingredient scanner after watching my mom struggle with food labels. 15 Android users so far—wondering if I'm missing something obvious
https://redd.it/1r6p4vf
@reddit_androiddev
DependencyGuard: protect your project's dependency graph
https://github.com/rubensousa/DependencyGuard
https://redd.it/1r63vkq
@reddit_androiddev
Last letters for Android codenames!?
Hi guys,
I've been studying Android for a while now, and I've realized we're already on the last letters of our alphabet for codenames. So, I'd like to know, from an engineering perspective, what are the names of famous candies that begin with the letters: W, X, Y, and Z?
And also, after we get to the letter Z, will there still be codenames for anything else? Or are you going to abandon codenames altogether?
I know you stopped disclosing the codenames to the general public starting with Android 10 (Quince Tart), but ever since my adolescence I've enjoyed this candy-themed name game. I, and I believe other people (devs), will miss it if this ends.
https://redd.it/1r5kh4y
@reddit_androiddev
What’s something you completely missed when building your app — that later turned out to be obvious?
A feature users didn’t care about?
A problem you misunderstood?
Or feedback you ignored?
Curious to hear real stories.
https://redd.it/1r5hqbl
@reddit_androiddev
AGP 9 update caused scoped storage import to cease on Android 10
I have recently updated to AGP 9 and updated all dependencies to the latest version (some were necessary to be updated to make it work).
After that scoped storage import (mostly) stopped to work on Android 10 in the release mode. It is likely that it wouldn't work below Android 10, but 10 is my min target at the moment.
Some small files can still be imported, but it generally fails irrelevant of the file type and related parser that I use.
I can't make it work even if I immediately copy file to temp and use that url instead.
I don't see any message (some exception should be caught and present the message in the app).
I use Jetpack Compose: rememberLauncherForActivityResult API. I run everything on app scope so there is no chance that something may be canceled when it is started.
Further it works on debug mode and on Android 11+ in release. Disabling R8 didn't help.
I will likely have to simply drop Android 10 support, but if anyone has any idea of what might be going on (possibly had some similar issue), that would be helpful to me and likely to community as I expect that this can't be isolated to my app only.
https://redd.it/1r5e3fc
@reddit_androiddev
How to create an automation for android phone.
I want to automate a task on my Android device. The task is quite complex. At first, I tried to build it using Python and an AI chatbot, but I was not successful. Now, I want to try an app that can help me create this automation.
I am looking for a free apps that can switch between apps, copying and pasting text, and detecting buttons on the screen. Suggest me something.
https://redd.it/1r5cuqq
@reddit_androiddev
My first android app hit +300 installs in just day 10 days with 4 sales
https://redd.it/1r5aehx
@reddit_androiddev
I updated my free workout tracker with a built-in "Dynamic Island" for music control. Thoughts?
https://redd.it/1r4tism
@reddit_androiddev
Launcher icon questions
I'm developing an Android app with minSdk=26, and I have a few questions about launcher icons.
1. Asset Studio puts the primary icon definition xml files in mipmap-anydpi-26, but the Android Studio linter then wants them in mipmap-anydpi since I'm targeting SDK 26. Is there a way to make Asset Studio put them there directly?
2. Given that I'm targeting SDK 26, do I actually need the images in the various density-specific mipmap-*dpi directories?
3. Importing an SVG to serve as a monochrome icon requires using Asset Studio, which creates the ic_launcher_monochrome_foreground.xml file to plug into the monochrome elements of my icon definitions (regular and round). But it also generates a seemingly unused (and useless) ic_launcher_monochrome_background.xml file, a similarly questionable monochrome icon definition file referencing the monochrome foreground and background, and by default versions of the monochrome icon in all the density-specific mipmap-*dpi directories. Can I delete everything but ic_launcher_monochrome_foreground.xml? Is there a way to import SVG as a launcher icon element without all these other pointless files, assuming that they truly are pointless?
Thanks in advance for any answers to these questions.
https://redd.it/1r55t9p
@reddit_androiddev
iOS or Android first?
I’m working on an app and I’m really not sure which platform I should focus on first for release; if I do android first, I need to find 12 testers through Reddit forums, testing apps, and wait 2 weeks. I’m not sure how I’d make sure all 12 testers are using the app consistently enough for Google Play to validate it.
If I do iOS first, I need to either find a Mac alternative (I’ve already tried rental Macs and Codemagic, which both failed) and deal with all the bugs that come with it, or try and see if I can make my super old MacBook Air who’s password I forgot (and can’t reinstate cause the email no longer exists) and bugs like crazy, work to get the build on Xcode.
Both are beyond more difficult than I was expecting when I started this project, so I’ll take any advice!
https://redd.it/1r538cn
@reddit_androiddev
Is it just me, or has uploading an app to Google Play become a complete nightmare?
I’m an experienced software engineer and I’ve been building and shipping products for years. I even uploaded apps to Google Play back in 2012, and I remember the process being pretty straightforward.
Now? It feels like a complete maze.
I’m currently trying to upload a new app, and the whole UI/UX of the Play Console is incredibly confusing. I genuinely can’t tell what the exact path to release is anymore. There are so many types of testing: internal, closed, open, production, testers, tracks… and it’s not clear what’s actually required vs. optional.
At some point I caught myself wondering: am I seriously supposed to go find 20 random people on Fiverr just to test my app so it can move forward? Or will it get approved anyway? I paid to ppl on fiver like 50$ but I think I won't even need the. The process feels unclear, fragmented, and full of friction.
What happened? Back in the day, you uploaded an APK, filled in the details, and shipped. Now it feels like navigating a bureaucracy simulator.
Any simple explanation of the actual minimal path to production in 2026 would be appreciated.
https://redd.it/1r4c09c
@reddit_androiddev
Does Microsoft still planning to get MAUI to be popular and useful, or it will die ?!
Should i learn it as .net developer or it waste of time
https://redd.it/1r0emvg
@reddit_androiddev
Interesting Android Apps: February 2026 Showcase
Because we try to keep this community as focused as possible on the topic of Android development, sometimes there are types of posts that are related to development but don't fit within our usual topic.
Each month, we are trying to create a space to open up the community to some of those types of posts.
This month, although we typically do not allow self promotion, we wanted to create a space where you can share your latest Android-native projects with the community, get feedback, and maybe even gain a few new users.
This thread will be lightly moderated, but please keep Rule 1 in mind: Be Respectful and Professional. Also we recommend to describe if your app is free, paid, subscription-based.
January 2026 showcase
December 2025 showcase thread
November 2025 showcase thread
https://redd.it/1r06v07
@reddit_androiddev
Got my first job in android? Should I try switching out right now?
I worked on MERN stack and web development throughout my college.
But recently, I got placed as an Android developer. I am confused because it’s a bit different from what I did before.
I just wanted to know Is Android development as good as web development in the long run?
There is definitely less competition in Android compared to web and less opportunities too.
Has anyone here switched from web to Android or mobile dev?
https://redd.it/1qzzkio
@reddit_androiddev
Important reminder about changes under the Australian Online Safety Act
WHAT EXACTLY SHOULD DEVELOPERS DO IN THIS CASE?
You are receiving this email because you make your app(s) on Google Play available to users in Australia.
Important changes under the Australian Online Safety Act may impact your app(s). While Google Play provides these updates to help you stay informed of regional requirements, you are responsible for determining whether and how this regulation applies to your app(s) and for ensuring that your app(s) comply with these obligations.
Social Media Minimum Age restrictions started 10 December 2025
From 10 December 2025, age restricted social media platforms must take reasonable steps to prevent users under the age of 16 from having an account on their service. You can visit the eSafety website to assess whether your app is in scope.
Commencement of Age-Restricted Material Codes started from 27 December 2025
The Age-Restricted Material Codes for some services commenced on 27 December 2025, with all remaining Codes commencing on 9 March 2026. The Age-Restricted Material Codes cover content that is inappropriate for minors (also referred to as Class 1C and Class 2 Content).
Please familiarize yourself with these codes that may apply to your app(s). eSafety provides clear guidance, resources and FAQs to help you navigate these requirements here.
https://redd.it/1qzsou8
@reddit_androiddev