ios-deploy是什么?
ios-deploy是一个终端安装和调试iPhone应用的第三方开源库。
不依赖于XCode,实现从命令行安装和调试ios应用程序,可以在非越狱的设备工作, 使用时需要开发者证书和Xcode7以上版本。
官网: https://www.npmjs.com/package/ios-deploy�
github: https://github.com/ios-control/ios-deploy
MacOS安装ios-deploy:
brew install ios-deploy
brew install node # 需要先安装node环境
npm install -g ios-deploy # 安装 ios-deploy
ios-deploy常用命令:
查看连接的设备(包括通过usb和wifi连接的)
ios-deploy -c
查看通过usb连接的设备
ios-deploy -c –no-wifi
安装应用到指定设备
ios-deploy –id[udid] –bundle [xxx.app]
卸载指定设备上的应用(根据包名,也就是bundleId)
ios-deploy --id [udid] --uninstall_only --bundle_id [bundleId]
查看指定设备上安装的所有应用(包括系统应用和第三方)
ios-deploy --id [udid] --list_bundle_id
检查指定设备上是否安装了某个应用
ios-deploy --id [udid] --exists --bundle_id
Usage:
Usage: ios-deploy [OPTION]...
-d, --debug launch the app in lldb after installation
-i, --id <device_id> the id of the device to connect to
-c, --detect only detect if the device is connected
-b, --bundle <bundle.app> the path to the app bundle to be installed
-a, --args <args> command line arguments to pass to the app when launching it
-t, --timeout <timeout> number of seconds to wait for a device to be connected
-u, --unbuffered don't buffer stdout
-n, --nostart do not start the app when debugging
-I, --noninteractive start in non interactive mode (quit when app crashes or exits)
-L, --justlaunch just launch the app and exit lldb
-v, --verbose enable verbose output
-m, --noinstall directly start debugging without app install (-d not required)
-p, --port <number> port used for device, default: dynamic
-r, --uninstall uninstall the app before install (do not use with -m; app cache and data are cleared)
-9, --uninstall_only uninstall the app ONLY. Use only with -1 <bundle_id>
-1, --bundle_id <bundle id> specify bundle id for list and upload
-l, --list list files
-o, --upload <file> upload file
-w, --download download app tree
-2, --to <target pathname> use together with up/download file/tree. specify target
-D, --mkdir <dir> make directory on device
-R, --rm <path> remove file or directory on device (directories must be empty)
-V, --version print the executable version
-e, --exists check if the app with given bundle_id is installed or not
-B, --list_bundle_id list bundle_id
-W, --no-wifi ignore wifi devices
--detect_deadlocks <sec> start printing backtraces for all threads periodically after specific amount of seconds