當前位置:編程學習大全網 - 腳本源碼 - 簡聊 mac 和 ios設備通信 (usbmuxd & service & bplist)

簡聊 mac 和 ios設備通信 (usbmuxd & service & bplist)

現在市面上基於 usbmuxd 協議軟件已經有很多,比如通過三方軟件讀取ios設備相冊,安裝、卸載軟件,peertalk等,大部分通信協議為plist。流程為:

mac <-> usbmuxd <-> ios <-> lockdownd <-> service

ios-webkit-debug-proxy 作為較為人熟知的框架也是通過這種方式,比較特殊的是通信協議變為了二進制的plist,也就是bplist,可以使用 plistutil 實現和xml互轉。

再進壹步呢?

比如騰訊的wetest開發的PerfDog, 實現跨平臺獲取非越獄設備的性能數據,實現和xcode中開發功能通信,方便自動化獲取instrument數據。

本文借助 ios-webkit-debug-proxy 源碼來了解mac 和 ios 指定服務通信原理。

定位到 ios-webkit-debug-proxy -> webinspector

int wi_connect(const char *device_id, char **to_device_id, char **to_device_name, int *to_device_os_version, void **to_ssl_session, int recv_timeout)

本人初衷是為了破解XCTest 通信協議,但是在實現過程中發現並不能通過 lockdownd_start_service 直接把手機指定服務啟動成功。看來如果想要破解XCTest協議,還需要多壹步,先了解xcode通信的內容。

啟動失敗:

啟動成功(安裝ipa服務):

到現在為止,並未成功模擬xcode啟動xctest流程,不知道哪裏的問題,忘有看到此文章的大佬不吝指教。

  • 上一篇:看日子用什麽軟件日歷可以看日子
  • 下一篇:騰訊公司有那些漏洞
  • copyright 2024編程學習大全網