Troubleshooting
NDK compile error
The setup required NDK of 25 and cargo-ndk > 3.0
. It has been tested and its nightly is built against 25.2.9519653
with cargo-ndk 3.2.0
.
Android Build in Windows
- 35GB of HDD needed for project building. It doesn't cover android emulator vm.
- Run
cargo install cargo-make
so thatcargo make
can be executed. - Run
cargo make android
in root directory. - Open sdk manager in android studio and install
Google Play x86_64 API 30
image andAndroid SDK Platform 30
.
API 31+
image is not launching in windows for now.- This apk is not working on
x86
image ofAPI 30
. API 32
doesn't containx86
image now.
- Open virtual device manager in android studio and create vm using
Google Play x86_64 API 30
image.
- 4GB of internal storage is recommended, because apk size of this project is 500+MB.
- Launch android emulator.
- Change to
app
directory and runflutter run
.
Flutter package file_picker
error in android 6.0
FilePickerDelegate
occurs error in getSlotFromBufferLocked()
under android 6.0.
This issue was fixed android 7.0.
Please read this comment.
Now minimum version of android is 7.0.
iOS Build
The iOS build doesn't work right now, see #10. Please install the Android SDK and use the aformentioned emulator for development and testing.
The following is iOS build steps. Unlike android, ios needs small space of 2~3 GB.
- Install
flutter v2.10.5
.v3+
seems to have some problem in macos. - Install the latest version of
rust
. - Install
cargo-make
. - Run
cargo make ios
in root directory of this project. - Run
flutter pub get
inapp
directory of this project. - Uncomment
# platform :ios, '9.0'
in Podfile ofapp/ios
directory. - Run
flutter run
.
CocoaPods issue in iOS build
You may get the error message Invalid argument @ io_fread
during compilation of rust library.
cocoapods
is using ruby-macho
and ruby-macho
occurs the crash about big input file.
iOS simulator uses x86_64-apple-ios
architecture.
The size of our library libacter.a
is as following:
Debug build: 717MB
Release build: 223MB
When using release build of libacter.a
, the error Invalid argument @ io_fread
disappeared.
The compile command of release build is the following:
cargo make --profile release ios