54
Stay up-to-date with latest news on Android Development! Content directly fetched from the subreddit just for you. Powered by : @r_channels
Android Studio Rabbit 2 RC 1 now available
https://androidstudio.googleblog.com/2026/10/android-studio-rabbit-2-rc-1-now.html
https://redd.it/1xbr1xu
@reddit_androiddev
A Staff Engineer's Honest Take on "Is Android Engineering Dead?"
https://youtu.be/vilSjGvJiBs?si=RWCbkuMBIcNBs9Ub
https://redd.it/1x4jx9x
@reddit_androiddev
Android Webview autocorrects word on website
We use Fully Kiosk app on an Android Tablet (Lenovo) and we have an issue where text on our website is auto corrected to something completely different to what is on the website.
When we test it on Chrome on the same tablet, it does not happen. It seems to be specific to the Fully Kiosk app. When asking their support they say that Fully Kiosk uses Android Webview provided by the device and it’s most likely caused by it. Does anyone has any experience with similar issue and how to update/stop Webview from doing the auto correct?
Is there a setting to prevent that?
https://redd.it/1xbkgy6
@reddit_androiddev
AI, Meet App: Android AppFunctions
https://proandroiddev.com/ai-meet-app-android-appfunctions-30bb845a4787
https://redd.it/1xbi3t3
@reddit_androiddev
How We Refactored a Crashing Production Android Payment Module via TDD and Feature Toggles
A year after deploying our application, Android Vitals and Firebase telemetry flags revealed a critical architecture defect: a 5% transaction drop rate and systematic crashes inside the core checkout flow on Android 13+.
De-obfuscation map logs pointed to a strict concurrency conflict between the Google Play Billing Library and our custom internal billing wrapper. Downgrading Google Billing was not an option. We had to rewrite the module in a live app without losing active subscriptions.
Here is the condensed 4-stage execution blueprint we used to overhaul the system during a 30-day sprint with zero downtime:
1. The Rollback Safety Valve (Feature Toggles)
• API Isolation: We decoupled the legacy module and isolated its public API behind strict interfaces.
• Twin Implementations: We maintained the legacy production code (Factory A) and created an exact cloned playground alongside it (Factory B).
• Remote Toggle: A remote feature toggle dynamically routed execution to either factory at runtime, providing an instant backend rollback mechanism if Factory B failed.
2. Testing Constraints (TDD)
Before modifying production code, we established strict boundaries: zero DB migration issues, zero performance drops over 10%, and a 95% Happy Path checkout success rate.
We sit down and developed 260 automated test cases covering roughly 88% of all possible failure states and network edge cases. No code was merged into the refactor branch without a 100% green CI/CD pipeline.
3. Execution & 5% Canary Release
• Stage 1: Overhauled the local state database layer, ran the suite until it turned green, and packaged it.
• Stage 2: Turned on the remote toggle rollout for only 5% of active users. Telemetry remained silent for 48 hours—no new crashes, no payment drops.
• Stage 3: Refactored the core business logic and direct billing API bindings under the same TDD cycle.
• Stage 4: Gradually increased the toggle from 5% to 100%. Once 88% of users updated, we deployed a cleanup release, deleting the toggle infrastructure and legacy code for good.
The Bottom Line (Metrics)
• Production Stability: Exactly one single bug slipped through the rollout.
• 1-Hour Mean Time to Repair (MTTR): Because the architecture was decoupled and backed by 260 tests, root-cause isolation took minutes. The fix was verified via TDD and hit production in under an hour.
• Maintainability: The system transitioned from a fragile black box into a highly predictable, self-documenting component.
https://redd.it/1x4snau
@reddit_androiddev
Transfer files wirelessly WITHOUT ANY INTERNET! #demo #tech #android #ai #vulkan
https://www.youtube.com/shorts/pjcAtQ7GcVQ
https://redd.it/1xbd27p
@reddit_androiddev
Jetpack Compose Runtime on Bare-Metal Linux: No Android, No Skia—Direct Rendering to fbdev/DRM
https://github.com/kaiwalyakhasnis/embedded-compose/tree/main
https://redd.it/1xbcrij
@reddit_androiddev
Lost 16-year-old legacy signing key for a portfolio of 3 apps (23M total downloads). Is there any hope for a manual Play App Signing enrollment?
Hey everyone,
I'm facing a massive issue with my dad’s old Google Play developer account and want to see if anyone here has gone through something similar.
Back around 2010, my dad had a freelancer build three Android apps that ended up getting 23 million downloads combined (the biggest one has 21M and 80k+ reviews). The last time they were updated was in 2015.
Recently, the apps got delisted because we didn't pass the new legacy account KYC yet (working on fixing that right now). But the real disaster is that the original developer lost the keystore file years ago. Because the apps are so old, they were never enrolled in Google Play App Signing.
I’m a developer myself now, and I want to completely rebuild his apps from scratch under the same package names, modernize them, etc.
Has anyone here ever lost an old legacy key on an account with millions of downloads? Were you able to get a human from Google support to manually enable Play App Signing for you, or is it completely hopeless and we have to start from zero with a new Package Name?
Would love to hear any stories or experiences.
Thanks!
https://redd.it/1xbafzr
@reddit_androiddev
developing android apps in visual studio code ??
i'm a student at university and teacher asked us to prepare our laptops for next lesson and i need to setup my vs code to be able to develop android on it and i don't know how to start or what to do
im running on arch linux since i want to learn that too
thank you all for ur hrlp
https://redd.it/1xb6ytr
@reddit_androiddev
Visited the Zoute Grand Prix in Knokke, found every car/parking app overly monetized, so I built my own free open-source car scanner in Kotlin / Jetpack Compose
https://redd.it/1x51u06
@reddit_androiddev
Pagelin — Open-source PDF generation library for Android with Jetpack Compose
https://redd.it/1x4rjjf
@reddit_androiddev
To senior android devs here, was it really that easy before the AI era?
These days, people often say that AI has severely impacted the job market. Candidates are applying to hundreds of jobs without getting a single interview call, and some are even losing their jobs to AI.
My question is for senior developers who have experienced the job market before the AI era: Was getting a job and landing interviews really easier back then, or are people overreacting and blaming AI for what might actually be a skills gap?
https://redd.it/1x5wx6l
@reddit_androiddev
After 6 years, I am moving on from my hobby project.
https://redd.it/1x9he8a
@reddit_androiddev
google play us changes in 2026 that i almost missed: your listing can be given to third-party stores, and fee reporting started oct 1
reading google's own help page for us developers, timeline:
\- oct 29 2025: google stopped requiring play billing in the us. you can link out to your own payment and talk about prices outside play
\- dec 9 2025: alternative billing and external links programs started
\- july 22 2026: play catalog access started. play gives app listings to third-party us android stores, unless you opted out before july 22
\- oct 1 2026: if you are in alternative billing you must report transactions and pay service fees
\- sep 17 notice: external links developers got until dec 1 2026 to report downloads and pay
the page does not say the fee percentages, it only says "relevant service fees".
most of our app users are not in the us, so for us it changes little. but the catalog one i did not know at all.
source: https://support.google.com/googleplay/android-developer/answer/15582165
anyone checked if your app is already listed in some third-party store because of this?
https://redd.it/1x99mkj
@reddit_androiddev
Qualcomm Hexagon NPU (GenieX / QAIRT) based inferencing for mobile chips
Hey everyone,
I have used AI to summarize everything because it was getting too long. I hope thats fine.
We’ve been optimizing an on-device Android assistant running a quantized 4B model (Gemma 4 E4B) on modern Snapdragon silicon (Snapdragon 8 Elite Gen 5).
Originally, our goal was sustained low-power efficiency and faster inferencing using NPU TOPs which otherwise is generally useless, so we built an aggressive 3-tier execution pipeline:
1. Tier 1 (NPU): Qualcomm Hexagon HTP execution via GenieX SDK & QAIRT plugin (com.qualcomm.qti:geniex-android:0.6.1).
2. Tier 2 (GPU): Google LiteRT-LM runtime using OpenCL / GpuDelegateV2 on Qualcomm Adreno.
3. Tier 3 (CPU): Multi-threaded CPU fallback via LiteRT-LM with XNNPACK optimizations.
After profiling and logcat diagnostics, we completely purged the NPU / GenieX path in favor of direct GPU (LiteRT OpenCL) -> CPU**.**
Here is what we ran into with Qualcomm's native NPU stack, along with our setup. I’m curious if anyone here has managed to get reliable, high-throughput LLM execution out of Qualcomm Hexagon without these headaches.
# 1. HTP Core Clamping & Throughput Bottleneck
* Logcat revealed that the Android runtime clamped requested HTP execution: `"Requested 4 HTP cores but the device exposes 1; clamping to 1"`
* The FastRPC bridge (`libcdsprpc.so`) shuttling massive Look-Up Tables (LUTs) across the DSP boundary created significant latency.
* Decoding Speed: NPU decoding saturated at \~8 tokens/sec (TPS). By contrast, the Adreno GPU via LiteRT OpenCL consistently hits 18–22 TPS on the same chip. Although prefill times are still better with NPU than GPU.
# 2. Native Parameter Rejection & Instability
* The native QAIRT plugin repeatedly choked on standard generation parameters: `ErrorCode[-100016] Parameter not supported by this plugin`
* Stop-words arrays and standard sampling parameters (temperature, top-p, repetition penalties) frequently triggered runtime rejections, forcing us to catch native exceptions and handle truncation manually at the string level.
# 3. Context Reset & KV Cache Destruction
* QAIRT lacked clean stateful KV cache rolling and conversation pruning.
* Resetting or trimming conversation context required destroying and recreating the entire native LLM wrapper instance (`llmWrapper?.destroy()`), re-allocating native DSP memory and re-reading files on session swaps.
# 4. APK Bloat & Brittle JNI Preloads
* Integrating the GenieX SDK and Qualcomm native libraries (`geniex-android`, `libgenie_t2t_run.so`, [`libggml-hexagon.so`](http://libggml-hexagon.so), `libhta_hexagon_runtime_snpe.so`) added 15–25 MB of binary bloat.
* It required a fragile dynamic JNI preloading loop before `GenieXSdk.init()` could even be called:
Kotlin code:
val preloads = listOf(
"QnnSystem",
"QnnHtp",
"QnnHtpNetRunExtensions",
"geniex-proc",
"geniex\_core",
"geniex",
"geniex\_plugin\_qairt",
"npu\_jni"
)
for (lib in preloads) {
try {
System.loadLibrary(lib)
} catch (t: Throwable) {
Log.w(TAG, "Preload notice for $lib: ${t.message}")
}
}
# The Outcome
Dropping the NPU entirely and sticking to a clean GPU (LiteRT OpenCL) $\\rightarrow$ CPU (XNNPACK) engine gave us:
* More than $2.5\\times$ faster token generation (18–22 TPS vs. 8 TPS).
* Fast, stable prefill.
* Support for standard sampling configs, stop sequences, and KV cache reuse without JNI crashes.
* A much smaller APK and simpler build chain.
# My Questions for the Community:
1. Has anyone managed to unlock multi-core HTP execution on commercial consumer Android builds without OEM-signed platform keys or root?
2. Has anyone achieved $>15$ TPS on a 3B–4B model using Qualcomm QNN / QAIRT directly (bypassing GenieX)?
3. Given the maturity of LiteRT (OpenCL) and MLC-LLM (Vulkan) on mobile GPUs, is targeting Qualcomm's NPU for on-device conversational LLMs even worth the developer overhead right now, or is it strictly a benchmark marketing feature until the tooling matures?
https://redd.it/1x9bajy
@reddit_androiddev
Have anyone used fastlane? is there any way to publish android app through api?
Can anyone know me right way of publishing android apps using fastlane or any other tool you use?
https://redd.it/1xbqeso
@reddit_androiddev
Preventing screenshots in recording and recent thumbnails or task switcher and showing black screen
Hi, I’ve been working on an app that has one main Activity and uses other Composables as screens.
I need to prevent screenshots and ensure that the app content is hidden or replaced with a black screen when it appears in the Recent Apps thumbnails or task switcher.
1. "FLAG_SECURE"
"FLAG_SECURE" helps prevent screenshots and screen recordings, but it doesn't seem to solve the issue with Recent Apps thumbnails on all Android versions.
2. Android 13 (API 33) and above
I was able to make the Recent Apps thumbnails display a black screen on devices running API 33 and above by using "setRecentsScreenshotEnabled()" and "Activity.setTaskDescription()", with the background color set to black.
3. Android versions below API 33
However, on devices running Android versions below API 33, the Recent Apps thumbnails still appear white or black instead of consistently displaying a black screen.
Is there any way to reliably display a black screen in both Recent Apps thumbnails and screen recordings across Android versions, including those below API 33?
https://redd.it/1xbkahm
@reddit_androiddev
Just created my first multiplatform application
https://redd.it/1xbjmnr
@reddit_androiddev
Using Claude AI as a mentor to relearn Android: good approach or a trap?
Hi everyone,
I’ve been working with Android for a while, but I’ve had a gap in active practice and want to get my skills back to a solid level. I’m planning to use Claude (Anthropic’s AI) as a mentor, not as a code generator.
The setup:
I’m building a real app with Jetpack Compose, Clean Architecture, and a multi-module structure (core / domain / data / feature modules).
Claude designs the module structure and breaks the work into small tasks with clear acceptance criteria.
I write all the code myself. I send it back for review, and Claude points out problems, names the concept I should revisit, and gives hints before full solutions.
Before each task, I answer a couple of conceptual questions in my own words (e.g. api vs implementation, why domain should be a pure Kotlin module).
What I’m worried about:
1. Does this actually build long-term retention, or does AI feedback create a false sense of understanding?
2. Is there a risk of picking up outdated or wrong patterns that I won’t catch because I’m relying on the AI’s review?
3. How do you make sure you’re learning and not just following along?
For those who’ve tried something similar, did it help? Would you add anything to the process (official docs, Now in Android, code reviews from real developers, etc.)? Or would you do it differently?
Thanks in advance!
https://redd.it/1x4e68u
@reddit_androiddev
PSA: Transferring an app from a personal to an org account doesn't skip the 12 testers / 14 days requirement
Our app was on a personal account, stuck behind the closed testing requirement. Common advice: "transfer it to an org account, those are exempt." We did. The requirement stays with the app, not the account.
What worked: creating a new app (new package name) directly in the org account. No testing gate, straight to production review.
Cost: new package, so users must reinstall and you lose reviews/installs.
Either do the 14 days or start the app on an org account from day one. Don't bother transferring.
https://redd.it/1xb31tu
@reddit_androiddev
New app Advice
https://redd.it/1xbd2h8
@reddit_androiddev
Android phone receiving 32+ Mbps via rear camera
https://youtube.com/shorts/R6LopLXtoIo?is=ExkpW9_Uyp6EPLOq
https://redd.it/1xb7d99
@reddit_androiddev
Minicraft: run a Minecraft Java server on your Android phone (no root, no PC)
https://github.com/leonaryto/MiniCraft
https://redd.it/1xb95hq
@reddit_androiddev
[Hiring] Full Stack Mobile Software Engineer (Swift / Kotlin) — VAZA | Toronto, Canada | Full-Time, Hybrid
Hey everyone! I'm Adel, Co-Founder and COO of **VAZA**, a Toronto-based consumer technology startup. We're looking for a talented **Full Stack Mobile Software Engineer** to join our growing engineering team and help us build and scale our native iOS and Android apps.
**A little about VAZA:**
We're building the world's first monetized opinion market, turning debates across sports, music, entertainment, anime and culture into interactive, community-driven markets.
Users can vote for free or back their opinions with money, with outcomes determined through community consensus.
Since launching, we've grown to **450,000+ registered users worldwide**, driven primarily by organic social media and creator partnerships.
We're now focused on building a world-class mobile experience and expanding our engineering team.
**What you'll be working on:**
* Building and shipping features across our native iOS and Android applications.
* Creating polished, animation-rich interfaces and real-time experiences.
* Working on core product features, including matchups, voting, profiles, gamification and payments.
* Owning mobile testing, performance improvements and App Store / Play Store releases.
* Collaborating with our backend, infrastructure and data teams.
* Working directly with our founders and technical leadership on product decisions and the roadmap.
**Our tech stack:**
* **iOS:** Swift 6, SwiftUI, async/await.
* **Android:** Kotlin, Jetpack Compose, coroutines & Flow.
* **Backend:** Rust, Axum, PostgreSQL, REST APIs and WebSockets.
* **Infrastructure:** AWS, Docker, Terraform and GitHub Actions.
**Who we're looking for:**
Ideally, someone who has experience shipping native mobile applications, is strong in **Swift/SwiftUI or Kotlin/Compose**, and is comfortable working across both platforms.
We're especially interested in engineers who have a strong product mindset, care about great UX, take ownership and enjoy building things from the ground up.
Experience with consumer apps, gaming, social platforms, fintech or real-time systems is a plus.
Rust experience is great, but not required.
**Why join us?**
We're still at an early stage, but already have a substantial global user base. You'll have meaningful ownership over the mobile product and the opportunity to build features that can reach hundreds of thousands of users.
We're a small, ambitious team with big plans, and we're looking for engineers who want to grow with the company rather than simply complete assigned tickets.
**Role details:**
* Location: Toronto / GTA (Hybrid).
* Type: Full-time, 40 hours per week.
* Compensation: Competitive salary + performance-based bonuses.
**Interested?**
Feel free to DM me directly or email me at [adel@vazainc.com](mailto:adel@vazainc.com) with your LinkedIn and résumé. I'd love to hear about your experience and what you personally worked on.
You can also check us out at [**https://vaza.vote**](https://vaza.vote) or **@**vazainc across socials.
Happy to answer any questions!
https://redd.it/1xb5ul8
@reddit_androiddev
What does this setting in devloper options REALLY do
I use an old phone Android 10 with 3GB RAM I was under the impression that setting the background process limit to 1 or 2 will speed the phone up is this really true or is it just a myth and what does it actually do
I have optimised the phone to the best of my knowledge but I dont understand this setting fully for example I use a VPN with kill switch and Gboard these 2 are always running in 'running services' no matter what so if I select 1 limit does it really affects Gboard or the VPN or slow my phone down and apps
I have noticed whenever I set it to 1 apps/system apps in 'cache' (in running services) are not activate as much but if I bump it up to 4 or standard they're all active so I assume leaving it on 4 or standard let's random apps take up RAM
https://redd.it/1xb2xg7
@reddit_androiddev
I've been building an open source debug toolkit for Android, and now your AI agent can use it too
https://redd.it/1xazscl
@reddit_androiddev
Custom code(Redeem code) - not showing in in-app purchase payment method
https://redd.it/1x9ivzh
@reddit_androiddev
I built an open-source tool that shows what an attacker sees when they decompile your APK
Hey everyone, Android dev here. I kept wondering how much of my own apps was exposed once someone ran jadx on the APK, so I built RevDroid.
You upload an APK and it:
\- reads identity and signing info with androguard
\- decodes the manifest with apktool (debuggable, allowBackup, cleartext, exported components, network security config)
\- decompiles with jadx and runs 26 rules for hardcoded keys, weak crypto (MD5/SHA1/ECB, static IVs), TrustManagers that accept everything, WebView JS bridges, SQL string concatenation and sensitive logging
\- masks every secret it finds (the report never shows them in full)
\- gives an explainable 0-100 score and A-F grade, mapped to CWE and OWASP MASVS, plus a PDF report
On a test app with 32 planted issues it catches all 32 in about 7 seconds.
Stack: FastAPI + React, with Docker support. It's static analysis only and meant for apps you own or are allowed to test.
Repo: https://github.com/yourmemecommunity-sy/RevDroid
I'd really like feedback from people who ship apps: which checks give you false positives, and what would you want it to catch that it doesn't yet?
https://redd.it/1x975yp
@reddit_androiddev
Built the gallery app with liquid glass ! iOS 27
Meet Luma. Android gallery reborn.
Liquid glass floating bar
Secure folder built in
Dynamic theming, your colours
Data and backup tools
Smooth native Compose
Free. Open source. No ads.
GitHub link: https://github.com/nkosanamahungela-dev/Luma-
Discord: https://discord.gg/yWSXq6h7b
https://redd.it/1x9cq8p
@reddit_androiddev
Built an open-source visual editor + AST engine for Jetpack Compose (No Gradle rebuilds for UI tweaks
🚀 Announcing ComposeBridge v1.0.0 — Real-Time Visual UI Editor & MCP Server for Jetpack Compose!
Tired of endless Gradle rebuilds just to tweak paddings, colors, and layout tokens in Compose?
I’ve just released ComposeBridge v1.0.0, an open-architecture developer tool and IntelliJ/Android Studio plugin that enables live, on-device UI editing directly synced back to your Kotlin source code.
✨ What’s inside v1.0.0:
🎯 Focus Mode: BottomSheet highlights only the exact element tapped—no digging through deep UI hierarchies.
🌐 Global vs. Split: Mutate tokens globally across the codebase or create isolated values on the fly.
📦 Pending Edits Queue: Batch your visual changes and sync them in a single surgical pass.
📐 Full Dimension Support: Live adjustments for paddings, widths, heights, and font sizes (<50ms latency).
🛡️ Review & Rollback: Git-status-like diff in the IDE; inspect exact changes or do a byte-for-byte rollback.
🤖 17+ MCP Server Tools: AI agents can now inspect layouts, run builds, and safely mutate source code via deterministic AST operations.
Direct downloads for the IDE plugin (.zip) and Compose Agent (.aar) are live in the GitHub release.
🔗 GitHub Repo & Quick Install:[https://github.com/JALAL591/compose-bridge\]
Would love to get feedback from fellow Android & Kotlin developers! Let me know what you think. 👇
#AndroidDev #JetpackCompose #Kotlin #AndroidStudio #OpenSource #DeveloperTools #MCP #AI
https://redd.it/1x9aohy
@reddit_androiddev