Easy to use, cross-platform tool to upload iOS apps to App Store Connect.
- OS: Windows, macOS or Linux
Download the latest binary for your platform from releases.
Or build from source:
cargo build --releaseThe binary will be at ./target/release/ios-uploader.
Cross-compile for all platforms:
make build-all # 自动安装 cargo-zigbuild(首次)Binaries will be in the build/ directory.
Basic usage:
$ ios-uploader -u <username> -p <password> -f <path/to/app.ipa>Note
The password should be an app-specific password, not your standard Apple Account password.
More information: https://support.apple.com/en-us/HT204397
-v, --version output the current version and exit
-u, --username <USERNAME> your Apple ID
-p, --password <PASSWORD> app-specific password for your Apple ID
-f, --file <FILE> path to .ipa file for upload (local file or http(s):// URL)
-c, --concurrency <N> number of concurrent upload tasks to use (default: 4)
-s, --status display upload status and exit
-h, --help output this help message and exit
Build and run using Docker:
docker build -t ios-uploader .
docker run --rm -e USERNAME="your-apple-id" -e PASSWORD="your-password" -v /path/to/app.ipa:/app/app.ipa ios-uploader -u "$USERNAME" -p "$PASSWORD" -f /app/app.ipa- Rust 1.75 or later
# Build for current platform
cargo build --release
# Run tests
cargo test
# Lint
cargo clippy
# Check compilation without building
cargo checkThis project is a Rust port of simonnilsson/ios-uploader, originally written in Node.js.
This package is not endorsed by or in any way associated with Apple Inc. It is provided as is without warranty of any kind. The program may stop working at any time without prior notice if Apple decides to change the API.