A mycelium flutter UI
- install flutter SDK https://docs.flutter.dev/get-started/install according to your platforms
- install Rust
- vscode for editing the Dart code
requirements
- Real iPhone is needed for test, we can't use Simulator here because mycelium need iOS
Network Extensionswhich can't run on Simulator.
build iOS Swift-Rust Bridge
cd mycelmob
bash build-ios.shthere is IPHONEOS_DEPLOYMENT_TARGET variable in the build-ios.sh which need to be the same with the value set in XCode.
build Macos Swift-Rust Bridge
cd mycelmob
bash build-mac.shrequirements
- Android Studio. The flutter related configuration can be found in the above flutter SDK installation guide
- Android NDK 26.1.10909125. Updated version can be found at
android/app/build.gradlefile
build Android Kotlin-Rust Bridge
cd mycelmob
bash build-android.shrequirements
Visual Studio 2022.
Complete list at https://docs.flutter.dev/get-started/install/windows/desktop#software-requirements
build Windows DLL
cd mycelffi
./build.batgo to myceliumflut dir
flutter pub getflutter run- or using vscode:
code .(to open vscode)Run-> `Start Debugging
We currently need to run it as administrator
self distributed .apk
flutter build apkgoogle playstore release
- create the signature, as described at https://docs.flutter.dev/deployment/android#sign-the-app
- change
signingConfig signingConfigs.debugin build.gradle tosigningConfig signingConfigs.release - increase build number in pubspec.yaml
- build the
.aab(application bundle)
flutter build appbundleBuild in release mode
flutter build windows --releasecopy visual studo .dll files:
cp 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.40.33807\x64\Microsoft.VC143.CRT\msvcp140.dll' .\build\windows\x64\runner\Release\
cp 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.40.33807\x64\Microsoft.VC143.CRT\msvcp140_1.dll' .\build\windows\x64\runner\Release\
cp 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.40.33807\x64\Microsoft.VC143.CRT\msvcp140_2.dll' .\build\windows\x64\runner\Release\
cp 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.40.33807\x64\Microsoft.VC143.CRT\vcruntime140.dll' .\build\windows\x64\runner\Release\
cp 'C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.40.33807\x64\Microsoft.VC143.CRT\vcruntime140_1.dll' .\build\windows\x64\runner\Release\run preparation script
.\installers\windows\prepare.batRun Inno Setup, our working dir is build\windows\x64\runner\Release:
- mycelium-network.exe as the application main executable (it is renamed from the original myceliumflut.exe)
add file(s)and add all.dllfilesadd folderand adddatafolder with it's subdirectories
Scroll down the list & select the data folder path and click on Edit… button.
It is important to ensure that the destination sub-folder has the same name data otherwise the app wont run after installation as all contents of the folder are dispersed outside. So, enter the name of the Destination subfolder as data and click OK.
The Inno Setup script can be found here, you need to modify the path (according to your env) before Build it on Inno Setup app.