Test and benchmark your Rust library on mobile devices with ease.
Much of this project is based on the work of cargo-dinghy. Furthermore, ideas were taken from the following projects:
- Run tests or benchmarks on iOS (simulator/real device) and Android (emulator/real device).
- Support for running benchmarks with
criterion
(example). - Bundle resource data that is required for your tests/benchmarks.
- Xcode
- ios-deploy
- libimobiledevice
- rsync
- A valid iOS Development certificate
- rustup toolchains:
x86_64-apple-ios
aarch64-apple-ios
- Android SDK
- Android NDK
- cargo-ndk
- rustup toolchains:
x86_64-linux-android
aarch64-linux-android
i686-linux-android
armv7-linux-androideabi
iOS
- Real device: iPhone 8 with iOS 15.5 & iPhone 13 mini with iOS 16.1.1
- Simulator: iPhone 13 with iOS 16.1.1
Android
- Real device: Xiaomi Redmi Note 9 (aarch64), Android 10
- Emulator: x84_64, Android 10 (API 29)
Host
- Intel based Mac with macOS BigSur 12.6.1
- Xcode 14.1
- ios-deploy 1.12
- API level 21
- NDK 22.1.7171670
- cargo 1.65.0
- cargo toolchains:
x86_64-linux-android
aarch64-linux-android
i686-linux-android
armv7-linux-androideabi
x86_64-apple-ios
aarch64-apple-ios
- There are currently no plans to add support for older versions of Xcode and other tools.
- Resource data is included in all test/benchmark binary bundles even if they are not needed.
- support for
aarch64-apple-ios-sim
andarmv7-apple-ios
is currently not implemented