Developer Quick-Start Guide (Android & iOS)
Use this guide to build the Secluso mobile application from source.
Important: Complete all core setup steps inour build your own guidebefore continuing.
Important: You do not need to build this yourself unless you're a developer. We have published on the iOS App Store and Google Play App Store. Please see below.
iOS Mobile App • Android Mobile App
- Flutter Docs: flutter.dev
- Firebase Setup for Flutter: firebase.google.com/docs/flutter/setup
Make sure the following tools are installed:
| Tool | Purpose |
|---|---|
| Flutter SDK (3.x or later) | Cross-platform mobile framework |
| Rust + rustup | Native library support |
| Android NDK | Compile Rust code for Android |
| Visual Studio Code | Recommended IDE |
| Firebase Account | Required for push notifications |
You can verify setup with flutter doctor.
git clone https://github.com/secluso/secluso.git
cd secluso
- Launch Visual Studio Code
- Open the secluso/ folder
- Install any recommended extensions (Flutter, Rust, Dart)
flutter pub get
From the project root:
cd rust
Add Android build targets:
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
Build and export to the Android JNI directory:
cargo ndk -o ../android/app/src/main/jniLibs build
This will generate .so files for each architecture and place them in the appropriate folder.
- Plug in your Android device via USB
- Enable Developer Mode and USB Debugging
- Ensure the device is recognized in Visual Studio Code (bottom-right status bar)
- From the project root, run:
flutter run
This will build and launch the app on your connected device.
| Problem | Solution |
|---|---|
App doesn’t update after flutter run |
Run flutter clean first |
| Rust compilation errors | Ensure targets and NDK are properly set |
The Android project includes a containerized reproducible-build path under tool/repro.
To compare an official Secluso Android release installed on a phone against a local rebuild:
tool/repro/build_with_docker.sh
tool/repro/pull_device_apk.sh
python3 tool/repro/apkdiff.py \
build/reproducible/device.apk \
build/reproducible/app-release-unsigned.apkFor the full reproducible-build workflow, signed-release path, and internal reproducibility test (tool/repro/check_reproducibility.sh), see tool/repro/README.md.
Need help or want to contribute? Visit the Secluso GitHub Repository.