Node wrapper around ideviceinstaller
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
apps
docs
test
utils
.gitignore
README.md
main.js
package.json

README.md

node-idevice

Install apps to your ios device with node.

This project depends on ideviceinstaller from the libimobiledevice project. The currently preferred way of obtaining the binary is to use brew.

brew install ideviceinstaller

You can then tell node-idevice to use the command:

// Use executable found in your $PATH
var device = new IDevice();

// Or you can manually set the executable
var device = new IDevice(false, {cmd: './path/to/ideviceinstaller'});

If you want to build the binary yourself you can try:

./utils/steps

This should pull and build all the dependencies. Be warned this is pretty long.

We currently support installing, removing and listing apps on a device.

Installing

var ipa = path.resolve(__dirname, '../path/to/your/App.ipa');
device.install(ipa, function (err) {
	// Do stuff when app is installed
});

// If you want to be sure the callback executes with the app on device you can use
device.installAndWait(ipa, 'domain.organisation.App', function (err, success) {
    // Do stuff when app is on device and ready
})

Note

ideviceinstaller consumes IPA packages, please see the docs on how to get an IPA from your App.

Removing

device.remove('domain.organisation.App', function (err) {
	// Do stuff when app is installed
});

Checking if an app is Installed

device.isInstalled(appName, function (err, installed) {
	// Installed is true when app is found on device
});

Listing Installed apps

device.listInstalled(function (err, data) {
	// data is a list of objects, one per app
	// The object contains info about the app, currently 'name' and 'fullname'
});