/MK.MobileDevice

The best iOS device communication library! A powerful, versatile library providing multiple interfaces to access and manipulate iOS devices, written in C#. Supports USB and wireless communication. Built for Windows but can easily be ported to Linux.

Primary LanguageC#GNU General Public License v3.0GPL-3.0

### The best iOS device communication library! Absolutely free and open source! # MK.MobileDevice MK.MobileDevice - A powerful, versatile library providing multiple interfaces to access and manipulate iOS devices over USB and WiFi (using both Apple drivers and custom drivers for Linux recompiled for Windows) written in C#. (Still being actively developed)
  • Yes, it's open-source, licensed under the GPLv3; please see LICENSE for more information.
  • It's GPL because there are too many closed source programs (iMazing, iExplorer, Syncios, etc.) that have similar functionality. I wanted an open community library and some open source tools.

Announcements

  • iOS 10 ready! - As soon as the new iPhones are released, support will be added for them too! Right now, all devices from the very first iPad/iPhone to the iPad Pros and 6s are supported!

Features

Use a Simple, concise API to do all kinds of cool things with your iDevice, over a USB cable or wirelessly (with iTunes WiFi Sync). You can use it as a sort of remote-control iTunes or something. Make your device do your bidding with MK.MobileDevice!

Here is a short list containing SOME (there are a LOT more features) of the many features of this library

  • Full AFC access in the /private/var/mobile/Media directory - transfer files back and forth!

  • Full developer disk image support and mounting (EVEN ON WINDOWS/Linux!!!!)

  • Take screenshots remotely! (you must mount developer disk first)

  • Connect to device - USB and even Wirelessly!!!

  • Remotely reboot, shut down, enter/exit recovery mode!

  • Manage iCloud activation lock!

  • Activate a hidden Semi-Sleep/Lock state (not yet tested on iOS 10, but it may work!)

  • Manage Applications (Install, Uninstall, Archive, Restore, Remove Archives, etc...)

  • Manage home screen layout (extract layouts, send layouts)!

  • Rename device name!

  • Full GasGauge battery diagnostics!

  • Extract metadata such as phone number, UDID, IMEI, etc.

  • Query apple property services for information like iCloud activation, etc.

  • And lots more! If there's anything important I didn't mention here, let me know!

  • Some of the APIs require certain components protected by Apple's EULA, so please install iTunes, or at least Apple Mobile Device Support and Apple Application Support. I do not believe I am allowed to redistribute them.

Planned features!

  • SSH Access (with Jailbreak)
  • Device port forwarding!

Driver DLLs for both 32-bit and 64-bit Windows are included, and you can build your very own set of native DLLs from the libimobiledevice-win64 project.

Support

Yes, I am willing to provide support, but only as time permits. Please post your question/issue in Issues

Thanks!

Getting set up See Install

##Documentation Documentation is available on [the github page](http://exaphaser.github.io/MK.MobileDevice

#Install

  • An outdated version of MK.MobileDevice is available on NuGet :( Please don't use this.
  • I recommend either cloning the repository (how) or downloading the artifacts from AppVeyor.

Once you have obtained a copy, proceed to the Wiki for more information.