0.0.34 • Published 5 years ago

limdk v0.0.34

Weekly downloads
4
License
ISC
Repository
github
Last release
5 years ago

NodeJs wrapper for libimobiledevice

Requirements

  • Node.js >= 6.0
  • libimobiledevice & ideviceinstaller
brew install libimobiledevice
brew install ideviceinstaller

Getting started

Install via NPM:

npm install --save idevicekit

API

idevicekit.listDevices()

Gets the list of currently connected devices.

  • Returns: Promise
  • Resolves with: devices An array of device's serial

idevicekit.getProperties(serial, option)

Retrieves the properties of the device identified by the given serial number. This is analogous to ideviceinfo.

  • serial The serial number of the device. Corresponds to the device ID in idevicekit.listDevices().
  • option Optional. The following options are supported, use ideviceinfo --help to learn more
    • simple When true, use a simple connection to avoid auto-pairing with the device, Default: false
    • domain set domain of query to NAME. Default: None
  • Returns: Promise
  • Resolves with: properties An JSON Object of device's properties.

idevicekit.getPackages(serial, option)

Retrieves the list of packages present on the device. This is analogous to ideviceinstaller.

  • serial The serial number of the device. Corresponds to the device ID in idevicekit.listDevices().
  • option Optional. The following options are supported, use ideviceinstaller --help to learn more
    • list List apps, possible options:

      • user: list user apps only (this is the default)
      • system: list system apps only
      • all: list all types of apps
  • Returns: Promise
  • Resolves with: packages An array of app package

idevicekit.screencap(serial)

Takes a screenshot in PNG format using idevicescreenshot.

  • Returns: Promise
  • Resolves with: screencap An PNG stream.

idevicekit.install(serial, ipa)

Installs the IPA on the device, This is analogous to ideviceinstaller -i <ipa>

  • Returns: Promise
  • Resolves with: output output of install command

idevicekit.reboot(serial)

reboot using idevicediagnostics restart.

  • Returns: Promise
  • Resolves with: success True if success

idevicekit.shutdown(serial)

reboot using idevicediagnostics shutdown.

  • Returns: Promise
  • Resolves with: success True if success

shortcut API

idevicekit.getBasicInformation(serial, option)

Basic device information from Apple, such as CPU, RAM, Official Name

getResolution(serial)

getStorage(serial)

getBattery(serial)

Example

let co = require('co');
let idevicekit = require('./index');
let fs = require('fs');

co(function* () {
    let devices = yield idevicekit.listDevices();
    for (let device of devices) {
        let properties = yield idevicekit.getProperties(device);
        let battery = (yield idevicekit.getBattery(device)).level;
        let resolution = yield idevicekit.getResolution(device);
        let status = yield idevicekit.getDeveloperStatus(device);
        console.log(`${device}: ${properties['DeviceName']}`);
        console.log(`    model: ${properties['ProductType']}`);
        console.log(`    battery: ${battery}`);
        console.log(`    resolution: ${resolution['width']}x${resolution['height']}`);
        console.log(`    status: ${status}`);
        let screenshotStream = yield idevicekit.screencap(device);
        screenshotStream.pipe(fs.createWriteStream(device + '.png'));
        
    }
}).catch((err) => {
    console.log(err);
});
0.0.34

5 years ago

0.0.33

5 years ago

0.0.32

5 years ago

0.0.31

5 years ago

0.0.30

5 years ago

0.0.29

5 years ago

0.0.28

5 years ago

0.0.27

5 years ago

0.0.26

5 years ago

0.0.25

5 years ago

0.0.24

5 years ago

0.0.23

5 years ago

0.0.22

5 years ago

0.0.21

5 years ago

0.0.19

5 years ago

0.0.18

5 years ago

0.0.17

5 years ago

0.0.16

5 years ago

0.0.15

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.12

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago