App Distribution โ Android & iOS
Overviewโ
Milestone 6 also delivers the distribution channels of the wallet app: a reviewer or tester must be able to install the app and exercise the flows of the local demo without building it from source.
- the stack (the
docker-compose.yml, the IPFS init script) is released inInterstellar-Network/containers; - the app artifacts (the Android APK, the iOS
.app) and the SDK package (the Swift package zip) are released inInterstellar-Network/wallet-app-internal, under them6-v1tag.
The APK you get from the GitHub release, from Firebase App Distribution or the .ipa
you get from TestFlight (or from the direct download) are the very same builds: they
are configured for the local dev stack (wss://127.0.0.1:2090, ws://127.0.0.1:9944, IPFS
127.0.0.1:5001), not for a hosted testnet.
So the local stack must be running before you can use any of them (see the
local demo), and on Android the
three ports must be exposed to the device/emulator (adb reverse tcp:2090 tcp:2090, โฆ). An iOS
Simulator reaches 127.0.0.1 natively.
| Platform | Channel | Target | Status |
| Android | GitHub release (m6-v1) | Emulator (x86_64) & devices (arm64) | the tag exists, the assets attached |
| Android | Firebase App Distribution | Device only (Firebase does not deliver to simulators) | the group exists, the builds are available |
| iOS | Direct .ipa download | Simulator (TestFlight does not deliver to simulators) | the tag exists, the assets are added at the release |
| iOS | TestFlight (App Store Connect) | Device only | WIP account approved but setup pending |
Android โ Firebase App Distributionโ
The Android app is distributed through Firebase App Distribution, the official channel for handing a build to a group of testers without going through the Play Store.
Get access to the testing groupโ
The tester group is a Firebase tester group: ask Interstellar to add you, or request access through the tester-group link:
appdistribution.firebase.dev/i/71f8c7de02bcbcdc
Once you are in the group, the app is installed straight from the browser (the Firebase tester page) or from the Firebase tester app on the device โ no adb, no sideloading.
The official documentation is the reference for the whole flow: distribute-gradle.
The same build is also published directly as an APK
there m6-v1 release
โ see the local demo.
This is mostly useful if you want to test using an Emulator and want to avoid the whole Google signin there.
iOS โ a direct .app (simulator) and TestFlight (real devices)โ
iOS does not use Firebase: the app is built with xcodebuild archive, exported and uploaded
to App Store Connect, where the build shows up in TestFlight.
TestFlight only delivers to real devices โ Apple does not distribute simulator builds through it. So the M6 release offers both:
- a direct
.appdownload for the iOS Simulator (the build compiles the Rust libraries for the simulator slice, so the app runs locally โ exactly like the Android APK in the emulator); - TestFlight for the real devices (signed and distributed by Apple).
For the testersโ
| What you want | Channel | What you do |
|---|---|---|
| Run the app in the Simulator | direct .app download | download the zipped .app from the m6-v1 release eg "iosApp-Simulator.app.zip", unzip it, then in Xcode Device > Install Simulated Packageโฆ (or xcrun simctl install booted <app>.app) |
| Run the app on a real device | TestFlight | PENDING/WIP install the TestFlight app, accept the invitation, then install the build |
Official documentation: upload builds ยท distributing for beta testing.
See alsoโ
- Local Demo with Docker โ run the stack and drive the app.
- Interstellar SDK โ Integration Delivered in Milestone 6 โ the SDK itself.
- iOS Port โ the iOS app and the iOS SDK.