ios 的終端命令一般使用第三方的開源庫工具答恶,下面介紹兩種:libimobiledevice
渴庆、ios-deploy
libimobiledevice
libimobiledevice 是一個跨平臺的軟件庫,支持 iPhone?, iPod Touch?, iPad? and Apple TV? 等設(shè)備的通訊協(xié)議。不依賴任何已有的私有庫苗缩,不需要越獄。應(yīng)用軟件可以通過這個開發(fā)包輕松訪問設(shè)備的文件系統(tǒng)搭伤、獲取設(shè)備信息,備份和恢復設(shè)備弄唧,管理 SpringBoard 圖標,管理已安裝應(yīng)用霍衫,獲取通訊錄候引、日程、備注和書簽等信息敦跌,使用 libgpod 同步音樂和視頻澄干。
安裝方式
brew install --HEAD libimobiledevice # 安裝最新的更新,支持 iOS 10
brew install ideviceinstaller # 僅在 iOS9工作
常用命令
1. 查看當前所連接的設(shè)備
idevice_id -l # 顯示當前所連接的設(shè)備[udid]柠傍,包括 usb麸俘、WiFi 連接
instruments -s devices # 列出設(shè)備包括模擬器、真機及 mac 電腦本身
2. 安裝應(yīng)用
xxx.ipa
為應(yīng)用在本地的路徑
ideviceinstaller -u [udid] -i [xxx.ipa] # 給指定連接的設(shè)備安裝應(yīng)用
3. 卸載應(yīng)用
bundleId
為應(yīng)用的包名
ideviceinstaller -u [udid] -U [bundleId] # 給指定連接的設(shè)備卸載應(yīng)用
4. 查看設(shè)備已安裝的應(yīng)用
ideviceinstaller -u [udid] -l # 指定設(shè)備惧笛,查看安裝的第三方應(yīng)用
ideviceinstaller -u [udid] -l -o list_user # 指定設(shè)備从媚,查看安裝的第三方應(yīng)用
ideviceinstaller -u [udid] -l -o list_system # 指定設(shè)備,查看安裝的系統(tǒng)應(yīng)用
ideviceinstaller -u [udid] -l -o list_all # 指定設(shè)備患整,查看安裝的系統(tǒng)應(yīng)用和第三方應(yīng)用
5. 獲取設(shè)備信息
ideviceinfo -u [udid] # 指定設(shè)備拜效,獲取設(shè)備信息
ideviceinfo -u [udid] -k DeviceName # 指定設(shè)備,獲取設(shè)備名稱:iPhone6s
idevicename -u [udid] # 指定設(shè)備各谚,獲取設(shè)備名稱:iPhone6s
ideviceinfo -u [udid] -k ProductVersion # 指定設(shè)備紧憾,獲取設(shè)備版本:10.3.1
ideviceinfo -u [udid] -k ProductType # 指定設(shè)備,獲取設(shè)備類型:iPhone8,1
ideviceinfo -u [udid] -k ProductName # 指定設(shè)備昌渤,獲取設(shè)備系統(tǒng)名稱:iPhone OS
ios-deploy
ios-deploy 同樣是一個安裝和調(diào)試應(yīng)用的命令行工具赴穗。0需要一個有效的開發(fā)者證書,已安裝 Xcode 7以上的版本膀息。
安裝方式
-
安裝 node (已安裝可略過)
brew install node
-
安裝
ios-deploy
npm install -g ios-deploy
開發(fā)者證書安裝般眉,請找 iOS 開發(fā)吧。
常用命令
1. 查看當前所連接的設(shè)備
ios-deploy -c # 查看連接的設(shè)備包括:usb潜支、wifi 連接
ios-deploy -c --no-wifi # 查看連接的設(shè)備(usb)煤篙,忽略 WiFi 連接的
2. 安裝應(yīng)用
xxx.app
為 Xcode 編譯后的應(yīng)用安裝包路徑
ios-deploy --id [udid] --bundle [xxx.app] # 給指定應(yīng)用安裝應(yīng)用
3. 卸載應(yīng)用
ios-deploy --id [udid] --uninstall_only --bundle_id [bundleId] # 給指定連接的設(shè)備卸載應(yīng)用
4. 查看設(shè)備已安裝的應(yīng)用
ios-deploy --id [udid] --list_bundle_id # 指定設(shè)備安裝的所有應(yīng)用,包括系統(tǒng)應(yīng)用和第三方應(yīng)用
ios-deploy --id [udid] --exists --bundle_id # 指定設(shè)備檢查指定應(yīng)用是否已經(jīng)安裝