Skip to content

MeshLive 0.3.0-beta

Latest

Choose a tag to compare

@gautamgpt1 gautamgpt1 released this 17 Oct 20:51

MeshLive 0.3.0-beta (unofficial build)

Unofficial, open-source build signed with the project's release key (not published on Google Play).
Application id: io.github.meshlive.app. Source commit: 867c18db8e202ec6e27b9fc6ce9285a05765f72c.
Licence: GPL-3.0-or-later; the full text is in LICENSE and third-party licences are in THIRD_PARTY_NOTICES.md of the source.

What changed

  • Audio-only live: Go live offers "Video and audio" or "Audio only". A radio uses a fraction of the Bluetooth capacity, reaches further and keeps playing with the screen off.
  • Voice calls on by default, with a ringing tone, answer and decline from the notification, calls over the lock screen, and the camera pausing at your ear.
  • New look: redesigned Settings (grouped cards, Privacy and Advanced privacy, red Wipe everything), Contacts with call buttons on each row, a step-by-step welcome, and stream titles shown in the Live list.
  • Finds iPhones running MeshLive by default; calls and streams work both ways between Android and iPhone.
  • Smoother streams on slow and newly met links, and turning Bluetooth off and on no longer breaks a stream or leaves a viewer stuck.
  • Names and stream titles are on by default: an optional name goes only, encrypted, to people you call; a title is public.

Measured on

Seven Android phones (Samsung S24, S22, M31, A55; Xiaomi; ASUS; OPPO A15s; Android 10 to 16) and an iPhone 16 Plus, on project benchmark builds 1639ba19, d1dceb61 and this release. Results vary by phone pair; see docs/DEVICES.md. Untested combinations are not claimed to work.

Known limits

  • Contacts can call each other by name only after their first answered call (found from the Nearby list); the next release exchanges the recognition keys during the QR scan.
  • Some older phone pairs (for example a 2020 MediaTek phone with a 2019 Qualcomm phone) are slow over Bluetooth LE.
  • Relaying calls through other phones is still an experiment (off by default).
  • No independent security audit yet.

Which file to download

File ABI versionCode SHA-256
MeshLive-0.3.0-beta-arm64-v8a.apk arm64-v8a 32 8487d693a3a411b33d7640c40aafda7a1c6317aaa1a338048b09de6c4679c0cd
MeshLive-0.3.0-beta-armeabi-v7a.apk armeabi-v7a 31 619196d5b53a9ce4e7732bbb3bb2ef021933c09706b92a3be5ba8a50ccf3f64e
MeshLive-0.3.0-beta-universal.apk universal 30 8d549de03134672f9346405f07150ed78cacb0ecfedafc6c2f366496976fa862
  • arm64-v8a: Almost every phone sold since about 2016 (64-bit ARM). Pick this one if unsure.
  • armeabi-v7a: Older or 32-bit-only ARM phones (some Android Go models). A 64-bit phone can also run it, but it is slower and Android will not move it to the 64-bit build by itself.
  • universal: Both libraries in one larger file, for sideloading when you do not know the ABI. Not published to F-Droid.

If adb shell getprop ro.product.cpu.abilist lists arm64-v8a, use the arm64-v8a file.

Verify before installing

  1. Hash: sha256sum -c SHA256SUMS --ignore-missing (PowerShell: Get-FileHash <file> -Algorithm SHA256).
  2. Signer: apksigner verify --print-certs MeshLive-0.3.0-beta-arm64-v8a.apk must print exactly one signer whose
    certificate SHA-256 digest is (colon form):
2E:EF:C0:5A:44:45:22:52:9D:9F:75:D7:EB:CE:FD:08:86:47:07:F2:1A:79:04:1D:B5:1E:BF:F8:36:49:E2:13

A different fingerprint means a different publisher: do not install it.
3. Source: SOURCE-MANIFEST.txt lists the commit, the SHA-256 of every tracked file and the pinned native
sources (libaom commit and tree SHA-256, libopus tarball SHA-256; python tools/fetch_native_sources.py
fetches and verifies them). python tools/make_release.py --manifest-only reproduces it from a checkout.