Home

Awesome

Golang-iDevice-CLI

license

Installation

https://github.com/electricbubble/gidevice-cli/releases

Devices

$ gidevice list
$ gidevice listen

DeveloperDiskImage

$ gidevice mount -l
# gidevice mount -l -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7
$ gidevice mount -d=/path/.../DeviceSupport/14.4/
$ gidevice mount /path/.../DeviceSupport/14.4/DeveloperDiskImage.dmg /path/.../DeviceSupport/14.4/DeveloperDiskImage.dmg.signature

App

$ gidevice applist
$ gidevice applist -t=all -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7

$ gidevice launch com.apple.Preferences
$ gidevice kill com.apple.Preferences

$ gidevice install /path/.../WebDriverAgentRunner-Runner.ipa
$ gidevice uninstall com.leixipaopao.WebDriverAgentRunner.xctrunner

$ gidevice ps

Forward

# Default port local=8100 remote=8100
$ gidevice forward
$ gidevice forward -l=9100 -r=9100 -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7

XCTest

$ gidevice xctest com.leixipaopao.WebDriverAgentRunner.xctrunner
# Only the logs contained in the text are displayed
$ gidevice xctest com.leixipaopao.WebDriverAgentRunner.xctrunner --contains="ServerURLHere->" --contains="Running tests..." --contains="Built at"
$ gidevice xctest com.leixipaopao.WebDriverAgentRunner.xctrunner --env=USE_PORT=8200 --env=MJPEG_SERVER_PORT=9200

Syslog

$ gidevice syslog

CrashReport

$ gidevice crashreport /path/.../local/dir/ -e -k

Screenshot

$ gidevice screenshot
$ gidevice screenshot -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7 -o=/path/..../screenshot.png

DeviceInfo

$ gidevice info
$ gidevice info -u=39xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx7 --json=true   # for json format output

Thanks

About
libimobiledevice/libimobiledeviceA cross-platform protocol library to communicate with iOS devices
anonymous5l/iConsoleiOS usbmuxd communication impl iTunes protocol
alibaba/taobao-iphone-devicetidevice can be used to communicate with iPhone device
electricbubble/gidevicecommunicate with iOS devices implemented with Golang

Thank you JetBrains for providing free open source licenses