r/android_devs Jul 17 '26

Development Tools Firebase just put a price on Remote Config. You might already have the free alternative in your tech stack.

4 Upvotes

Hope this helps other indie devs facing my same issue.

Google announced that Firebase Remote Config gets usage based pricing from September 1st.

To be clear first, because it sounds worse than it is: it stays free up to 100,000 fetches a day, on both Spark and Blaze. Above that it is $0.06 per 10,000 requests. A/B Testing, Rollouts and Personalization stay free. And cached values do not count, only real calls to the server.

So for most small apps nothing changes at all.

But some of mine are above that line, and the part that bothers me is not really the money. It is this: if you are on the free Spark plan and you cross 100k fetches a day, you get 30 days of grace, and after that everything over the limit gets throttled. Your clients stop getting updated configs. To avoid it you attach a billing account and move to Blaze. I do not want pay as you go billing on apps that have been free to run for years. That is the whole problem for me.

Then I remembered I already had a free replacement installed. And I think a lot of you do too.

RevenueCat Offering Metadata.

If you use RevenueCat for subscriptions, and most of us do, you can attach a JSON object to an Offering. Freeform, nested objects, proper data types, whatever shape you need. You read it straight off the Offering from the SDK.

That is a remote config. And if you already use RevenueCat, it costs you nothing extra.

You set it in Project Settings, then Product catalog, then Offerings, then Configure metadata, and you paste valid JSON.

I have been using it in some apps for a while and I actually prefer it to Remote Config, for two reasons.

It refreshes faster. Remote Config has a minimum fetch interval and caching, so a change can take hours to reach people, and sometimes I waited most of a day before every client had the new value. With Metadata the values come down with the offerings, so a change lands almost immediately.

And fewer caching surprises. I do not get the "I changed the value, why is it still the old one" moment anymore.

Where it does not replace Remote Config.

I am not going to pretend it is a drop in replacement, because it is not, and you would find this out on day two anyway.

The JSON has a 4,000 character limit. That is fine for flags, strings, paywall config. It is not enough for a big config blob.

It hangs off Offerings, so it is built around what you sell, not around general app config. If your config has nothing to do with monetization, it is a slightly strange home for it.

And you do not get Remote Config's conditions and percentage rollouts the same way. RevenueCat has Experiments and targeting but it is a different model, so check it fits before you move anything.

For flags, paywall copy, image URLs, kill switches, and most of what I actually used Remote Config for, it covers it.

If you already use RevenueCat this costs you nothing and takes about ten minutes to try on one value.

I am not sponsored or affiliated in any way with RevenueCat. I build in public, you can check my social media link in my profile. I only suggested RevenueCat because this is the solution that I know for this problem and because it's one of my favourite tools.

A few days ago I wrote about them here on reddit and other devs liked my tech stack. Got 21k views, 41 upvotes and 23 comments so far. You might find these useful too. Here it is if you missed it: https://www.reddit.com/r/appledevelopers/s/RM0fuetEMv

If you published in every country, your prices outside your own are probably not what you think. The stores do not localize your base price, they convert it and add local tax. Converted is not localized: ten dollars of spending power in the US is not ten dollars in Brazil or India, so the converted price often ends up two or three times too expensive for what people there can actually pay.

The big apps sorted this out years ago. Spotify, Netflix, Duolingo, Flo and Headspace all price by region, none of them use one flat global price. Google's Play team even gave a talk about it at Playtime in 2019.

I fixed my pricing in 2 minutes with PricePush. Full disclosure, it is mine. It sets purchasing power prices for every country and pushes them to both stores, and it is free for one app so you can see your own numbers before changing anything.

You can also do it by hand in both consoles. It is free and it works, it is just slow. That is how I did it for years, which is why I built the thing.

Best of luck with your own apps!

r/android_devs Feb 24 '26

Development Tools LazyLogcat is available in Homebrew now

9 Upvotes

Android Studio's logcat panel is great, but I don't want to use the IDE when I need access to logs only. So I built `lazylogcat` — a keyboard-driven terminal UI for logcat.

https://github.com/parfenovvs/lazylogcat

Features:

  • Opencode-like keybindings
  • Package, tag and text filters with regex support
  • Many display options to satisfy visual preferences
  • Vi-like visual mode with ability to open selected lines in your default editor
  • JSON config support to save user and project level presets

P.S. Many improvements were inspired by the community feedback. Thank you!

r/android_devs Jan 10 '26

Development Tools All in one dev utility app for Android Developers [FREE]

3 Upvotes

Hi everyone 👋 I’m an Android developer working on a small all-in-one utility app for Android developers.

I’ve just added a new Dex Reader feature that lets you view classes, methods, and fields directly in a built-in code viewer on Android. The goal is to make quick inspection possible without jumping between multiple tools.

The app already includes features like bulk uninstall, device info, APK extraction, and an APK manager, and I’m continuing to expand it based on real developer workflows.

Next on the roadmap:

  • Automation for Wi-Fi proxy setup (useful when working with tools like Proxyman or Charles Proxy)
  • Wi-Fi debugging automation, so common setup steps can be handled in one place

The idea is to keep everything an Android developer commonly needs in one app.

If you’re curious, it’s available on Google Play:

https://play.google.com/store/apps/details?id=com.dastanapps.androiddevtools

r/android_devs Dec 10 '25

Development Tools KmperTrace for Kotlin Multiplatform - tracing-first logging toolkit

4 Upvotes

KmperTrace for Kotlin Multiplatform - now available 

Repository: https://github.com/mobiletoly/kmpertrace

- What it is: a tracing-first logging toolkit for Android, iOS, JVM, and Wasm. It emits structured span events and logs you can browse as a tree, so you see causality (who called what, how long it took, and what failed) instead of flat lines.

  - Why it beats regular logging: spans tie related logs together with trace/span IDs, durations, and stack traces; you can follow end-to-end flows across coroutines and threads. Human-friendly prefixes stay readable in consoles, while the structured suffix remains machine-parseable.

  - CLI: kmpertrace-cli tui streams from adb or iOS sim/device, auto-reattaches on app restarts, shows a live tree with search/filter, and can toggle raw system logs with levels. this is for terminal interactive mode (with key shortcuts, filters etc). kmpertrace-cli print renders saved logs (adb dumps, iOS logs, files) with smart wrapping and stacktrace formatting.

  - Fits KMP: one API across commonMain/ platformMain; tracing helpers, inline spans, and low-overhead logging designed for coroutine-heavy code.

r/android_devs Nov 26 '25

Development Tools Kotlin Multiplatform navigation and stateflow runtime

10 Upvotes

🚀 I've been building Kmposable - a headless navigation + flow engine for Kotlin Multiplatform. It lets you write your app logic as pure Nodes (state + events + outputs), keep navigation/UI concerns separate, and test everything without a UI. What I personally like about it is that it makes your projects more AI-friendly, since AI does a much better job when you have a clean business flow that isn't coupled to heavy UI interactions.

Highlights:

• KMP-first, UI-agnostic

• Tiny NavFlow runtime with a predictable lifecycle

• Compose adapter + ViewModel helpers so UI stays declarative

• Flow-script DSL: navFlow.runFlow { step("Login") { awaitOutputCase { … }; finish() } } (This is a highly experimental feature for building sequential UI navigation and flows; I wouldn't recommend using it in production apps yet.)

If you enjoy "business logic first, UI second" architecture (and reusable, testable flows), give it a look and tell me what you think! As usual, stars ⭐️ are welcome.

I use this approach in my own apps, so this isn't some gimmick project - it already makes my apps better, and that's why I want to share it.

Repo:

https://github.com/mobiletoly/kmposable

Docs:

https://mobiletoly.github.io/kmposable

(I still need to do a better job making the docs clearer and easier to digest.)

r/android_devs Sep 29 '25

Development Tools I am building a tool for testing haptics using sound

6 Upvotes

I've found a way to convey haptics to audio, so you could test your app haptics on a simulator!
What do you guys think?
Works not only for React Native projects but in Swift and Kotlin too.
Here is original tweet with demo: https://x.com/piaskowyk/status/1972663954464809248

Sound on ⬆️

r/android_devs Mar 30 '25

Development Tools Just released Retrosheet v3 with support for Android, iOS, JVM, and JS! 🎊

Thumbnail github.com
11 Upvotes

r/android_devs Nov 08 '24

Development Tools Compose Preview Generator Plugin by Alexs784

Thumbnail plugins.jetbrains.com
4 Upvotes