A Rust library for interacting with iOS services. Inspired by libimobiledevice and pymobiledevice3, this library interfaces with lockdownd and usbmuxd to perform actions on an iOS device that a Mac normally would.
IMPORTANT: Breaking changes will happen at each point release until 0.2.0.
The library is still in the development and brainstorming stage.
Pin your Cargo.toml to a specific version to avoid breakage.
This library is in development and research stage. Releases are being published to crates.io for use in other projects, but the API and feature-set are far from final or even planned.
- lockdownd connection
- SSL support
- Heartbeat
- Pairing file
- Instproxy (partial support)
- afc
- amfi
- companion proxy
- diagnostics
- file relay
- house arrest
- misagent (certificates)
- RemoteXPC
- mobile backup
- notification proxy
- DVT protocol
- screenshot
- simulate location
- process control
- web inspector
- usbmuxd connection
- Documentation
To keep dependency bloat and compile time down, everything is contained in features.
- core_device_proxy
- heartbeat
- installation_proxy
- mounter
- xpc
- full
As this project is done in my free time within my busy schedule, there is no ETA for any of these. Feel free to contribute or donate!
As Apple prohibits downgrading to older versions, this library will not keep compatibility for older versions than the current stable release.
doronz88 is kind enough to maintain a repo
for disk images and personalized images.
On MacOS, you can find them at ~/Library/Developer/DeveloperDiskImages on a Mac.
MIT