Skip to main content

Service

Android App Development

Android app development services in Flutter and Kotlin — built for real devices, current Play policy and a release that is not blocked at review.

We build Android apps for startups and growing products — usually in Flutter so iOS comes with it, with Kotlin where the platform demands native code. Every build is tested on real hardware across screen sizes and OS versions, and shipped to Google Play against the policies that apply today, not the ones from two years ago.

Android is most of the world’s smartphones, and the hardest platform to get right everywhere. Thousands of device models, manufacturer battery savers that kill background work, screen sizes from small phones to tablets, and a Play Store whose requirements tighten every year. An Android app that works on the developer’s phone is the start of the job, not the end.

Most of our Android work ships in Flutter, which gives you the iOS app from the same codebase. When an app needs something Flutter does not handle well, we write it natively in Kotlin or rebuild the native library ourselves — as on Leklok, where an archived audio dependency broke Google Play’s 16 KB page-size check and a custom FFmpegKit build kept voice modification working and the release compliant. The full story is in our write-up.

If you are looking for an Android apps development company to take a product from idea to Google Play, or to rescue a release that keeps failing pre-launch checks, this is the work we do.

What We Deliver

  • Flutter apps for Android and iOS from one codebase
  • Native Kotlin modules and foreground services
  • Google Play submission, closed testing and staged rollouts
  • 16 KB page-size and target API level compliance
  • Offline-first sync with local storage and an outbox
  • Firebase Cloud Messaging push and in-app chat
  • Google Play Billing, RevenueCat subscriptions and Google Pay
  • Google Maps, Places and live location tracking

Start Your Project

Book a free scoping call or send us your project details.

Our approach

How we decide what to build with

The trade-offs behind the stack, so you can challenge them before the work starts.

Flutter unless there is a reason not to

Shared code with iOS, consistent UI on every device, and native performance for the interfaces most products need. Leklok, Chattick, BackMe, Auto-Listo! and Shippacks all run on Flutter.

Kotlin for the platform-specific parts

Ongoing notifications, foreground services, native audio and other Android APIs are written natively and bridged in, rather than forced through a plugin that half works.

Built for unreliable networks

Offline-first storage and an outbox that syncs when the connection returns — the architecture behind Chattick’s messaging — so actions queue instead of failing on a weak signal.

Compliance in CI, not at the deadline

Target API level, native library alignment and permissions are checked on every release build, so a Play policy change shows up as a failed pipeline months early, not a blocked launch.

Who this is for

Where this service fits

If one of these sounds like your team, we have done this work before.

Startups launching on both platforms

One Flutter codebase for Android and iOS, so you are not paying for two apps or watching one platform lag behind the other.

Android-first markets

Products aimed at South Asia, the Middle East, Latin America and other regions where Android dominates — including right-to-left Arabic and Urdu layouts.

Apps blocked by Play Console

Target API deadlines, 16 KB native libraries, Data safety mismatches or a new developer account stuck in closed testing. We diagnose it and get the release moving.

Apps with background work

Timers, live tracking, calls and sync that must survive Doze and aggressive manufacturer battery optimisation.

How we work

From first call to store launch

The same five steps run every engagement, whatever the service.

  1. Discovery

  2. Design

  3. Build

  4. Launch

  5. Grow

See what each step delivers →

FAQ

Common Questions

Do you build Android apps in Kotlin or Flutter?
Mostly Flutter, because it gives you the iOS app from the same codebase. We write Kotlin for the parts that need native Android APIs — foreground services, ongoing notifications, native audio — and bridge them into the Flutter app.
Can you fix a Google Play 16 KB page size rejection?
Yes. We find the native libraries that are not 16 KB aligned, update or replace them, and rebuild them ourselves when the dependency has been abandoned — which is what we did for Leklok’s FFmpegKit audio processing.
How do you test on so many Android devices?
We test on physical devices across screen sizes, Android versions and manufacturers, paying particular attention to brands whose battery optimisation interferes with background work, and use Google Play’s pre-launch reports to cover models we do not hold.
What does it cost to publish on Google Play?
Google charges a one-time $25 registration fee for a developer account. New personal accounts must also run a closed test with a minimum number of testers before releasing to production, which needs to be in the plan. Organisation accounts are exempt from that requirement.
Will my Android app work offline?
It can, if it is designed for it from the start. We use local storage with an outbox that syncs when the connection returns — see our guide to offline-first sync for how that works.
Can you take over an existing Android app?
Yes. We audit the codebase, dependencies and Play Console status first, then tell you honestly whether extending it or rebuilding is the cheaper path.

Ready to build something remarkable?

Book a free 20-minute scoping call. We'll review your idea, share relevant case studies, and outline a realistic timeline.

Reply within 24 hours · No commitment required