CrossBundle CLI

The crossbundle is a command-line tool that encapsulates boring stuff of Android and iOS build/packaging processes and helps mobile developers to create and maintain applications written in rust programming language.
Installation
NOTE
For the correct work of the tool, you need to set up a development environment (ex. install some libraries and tools - such as Android SDK, Android NDK, XCode, etc). More information about how to set up the environment in the Android setup and iOS setup wiki pages.
Syntax
To see the complete documentation for each command/subcommand you can write -h or --help:
Command crossbundle
USAGE:
crossbundle [OPTIONS] <SUBCOMMAND>
OPTIONS:
-c, --current-dir <CURRENT_DIR> The current directory where to run all commands
-h, --help Print help information
-q, --quiet No output printed to stdout
-v, --verbose A level of verbosity, and can be used multiple times
-V, --version Print version information
SUBCOMMANDS:
build Starts the process of building/packaging/signing of the rust crate
help Print this message or the help of the given subcommand(s)
log Attach logger to device with running application
new Creates a new Cargo package in the given directory. Project will be ready to build
with `crossbundle`
run Executes `build` command and then deploy and launches the application on the
device/emulator
Command crossbundle build android
USAGE:
crossbundle build android [OPTIONS]
OPTIONS:
--aab
Generating aab. By default crossbow generating apk
--all-features
Activate all available features of selected package
--example <EXAMPLE>
Build the specified example
--features <FEATURES>...
Space or comma separated list of features to activate. These features only apply to the
current directory's package. Features of direct dependencies may be enabled with `<dep-
name>/<feature-name>` syntax. This flag may be specified multiple times, which enables
all specified features
-h, --help
Print help information
--no-default-features
Do not activate the `default` feature of the current directory's package
--quad
Specifies to build macroquad game engine
--release
Build optimized artifact with the `release` profile
--sign-key-alias <SIGN_KEY_ALIAS>
Signing key alias
--sign-key-pass <SIGN_KEY_PASS>
Signing key password
--sign-key-path <SIGN_KEY_PATH>
Path to the signing key
--target <TARGET>...
Build for the given android architecture. Supported targets are: `armv7-linux-
androideabi`, `aarch64-linux-android`, `i686-linux-android`, `x86_64-linux-android`
[default: aarch64-linux-android]
--target-dir <TARGET_DIR>
Directory for generated artifact and intermediate files
Command crossbundle build apple
USAGE:
crossbundle build apple [OPTIONS]
OPTIONS:
--all-features
Activate all available features of selected package
--bin <BIN>
Specify custom cargo binary
--example <EXAMPLE>
Build the specified example
--features <FEATURES>...
Space or comma separated list of features to activate. These features only apply to the
current directory's package. Features of direct dependencies may be enabled with `<dep-
name>/<feature-name>` syntax. This flag may be specified multiple times, which enables
all specified features
-h, --help
Print help information
--identity <IDENTITY>
The id of the identity used for signing. It won't start the signing process until you
provide this flag
--no-default-features
Do not activate the `default` feature of the current directory's package
--profile-name <PROFILE_NAME>
Provisioning profile name to find in this directory:
`~/Library/MobileDevice/Provisioning\ Profiles/`
--profile-path <PROFILE_PATH>
Absolute path to provisioning profile
--quad
Specifies to build macroquad game engine
--release
Build optimized artifact with the `release` profile
--target <TARGET>...
Build for the given apple architecture. Supported targets are: 'aarch64-apple-ios`,
`armv7-apple-ios`, `armv7s-apple-ios`, `i386-apple-ios`, `x86_64-apple-ios` [default:
aarch64-apple-ios]
--target-dir <TARGET_DIR>
Directory for generated artifact and intermediate files
--team-identifier <TEAM_IDENTIFIER>
The team identifier of your signing identity