Files
Meshtastic-Android/obtainium-test-builds.md
2026-06-24 13:46:34 -05:00

4.3 KiB

Installing Meshtastic Test Builds with Obtainium

Obtainium installs and auto-updates Android apps straight from their GitHub releases — no Play Store account, no testing-track invite. This guide sets it up for Meshtastic and shows how to follow the open beta or closed beta channels.

Heads up — signatures. Builds from GitHub are signed with the project's release key, not Google Play's. If you already have Meshtastic installed from the Play Store, Android will refuse to update over it. You must uninstall the Play Store version first (this clears app data), then install via Obtainium and stay on Obtainium for updates. The fdroid and google flavors also differ in signature — pick one and don't switch.

Which channels can Obtainium reach?

Meshtastic for Android promotes builds up a ladder: closed → open → production. Each maps to a Google Play track, and the GitHub release is published (un-drafted) when a build is promoted to closed or higher.

Channel Play track On GitHub Obtainium can install it?
stable Production published, marked Latest Yes
open beta Beta (Open) published prerelease, tag vX.Y.Z-open.N Yes
closed beta Alpha (Closed) published prerelease, tag vX.Y.Z-closed.N Yes

Only one test build is "live" on GitHub at a time: as a build is promoted, its release object moves forward (its tag changes from -closed.N to -open.N to the clean production tag). So a -closed/-open build is installable only while it is currently parked in that channel — once promoted onward, the old channel tag no longer has a release.

Setup

  1. Install Obtainium (GitHub releases or F-Droid / IzzyOnDroid).
  2. Tap Add App.
  3. App Source URL:
    https://github.com/meshtastic/Meshtastic-Android
    
  4. Set the options for the channel you want (below).
  5. Tap Add, then Install.

Stable

  • Include prereleases: off
  • (optional, stricter) Verify the 'latest' tag: on
  • Filter APKs by regular expression: see Picking the APK

Open beta

  • Include prereleases: on
  • Filter release titles by regular expression: -open\.
  • Filter APKs by regular expression: see Picking the APK

Closed beta

  • Include prereleases: on
  • Filter release titles by regular expression: -closed\.
  • Filter APKs by regular expression: see Picking the APK

Bleeding edge (newest test build, any channel)

  • Include prereleases: on
  • (no release-title filter)
  • Filter APKs by regular expression: see Picking the APK

Obtainium installs the newest published prerelease — whatever is currently in open or closed.

If your channel filter finds nothing: when no build is parked in that exact channel, the title filter matches no current release (old channel tags are orphaned once promoted). For a strict channel pin, turn Fallback to older releases off. To always have something to install, use the Bleeding edge form above instead.

Picking the APK

Each release attaches the google flavor APK, several fdroid flavor APKs, plus an .aab (not installable) and the desktop installers. Pin exactly one with Filter APKs by regular expression:

You want Regex
Recommended for testing — Google flavor google-release\.apk
fdroid flavor, most phones (arm64) fdroid-arm64-v8a-release\.apk
fdroid flavor, one-size-fits-all fdroid-universal-release\.apk

Use the Google flavor while testing. It ships Firebase Crashlytics and Datadog RUM, so the crashes and errors you hit get reported back to the team — which is the whole point of a test phase. It also has Google push (FCM) and Google Maps. Pick an fdroid flavor only if you'd rather not send that telemetry. Keep the same flavor on every update — switching flavors triggers the signature-mismatch refusal described above.

Notes

  • Track without installing: turn on Track-only to get update notifications without Obtainium downloading anything.