finds.dev← search

// the find

firebase/firebase-android-sdk

★ 2,542 · Java · Apache-2.0 · updated Jun 2026

Firebase Android SDK

This is the official Google-maintained source for all Firebase Android SDKs except Analytics and Auth — Firestore, Realtime Database, Storage, Remote Config, Crashlytics, Functions, and a growing firebase-ai module wrapping Gemini/Imagen. If you're building Android apps on Firebase and want to understand what's happening under the hood, file bugs with reproduction steps, or contribute fixes, this is where that work happens.

The CI setup is thorough: separate workflows for unit tests, instrumentation tests against Firebase Test Lab, API semver checking via Metalava, errorprone, and spotless formatting — most SDKs at this scale cut corners on one or more of these. The `@PublicApi` / `@KeepForSdk` annotation system for driving both proguard rules and semver decisions is genuinely well thought out — it turns a normally manual and error-prone release decision into a tooling-enforced one. The firebase-ai module now exposes on-device model support alongside the cloud backend with a proper fallback/provider abstraction, which is more architecturally honest than most vendor SDKs that bolt this on as an afterthought. The local publishing workflow (`publishReleasingLibrariesToMavenLocal`) makes it practical to actually test a change against your own app without waiting for a release.

The repo notably excludes Auth and Analytics — the two SDKs developers most often need to debug or patch — so if that's your problem, you're still reading bytecode. Cloning requires `--recurse-submodules` and an NDK 21 pin for Crashlytics NDK, meaning the 'just clone and open in Android Studio' experience breaks silently if you miss either step; this is a recurring contributor friction point. The firebase-ai module is clearly evolving fast (live session, on-device model, template generative model, Imagen editing) but the API surface has a `@PublicApi` gap where several of these newer features aren't fully stabilized, so adopters will hit breaking changes. Integration tests require a real `google-services.json` wired to a billing-enabled project, which makes CI contribution from external forks essentially impossible without setup that most contributors won't bother with.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →