idb是什么
iOS Debug Bridge - iOS调试桥、安卓有一个很出名ADB(安卓调试桥)它可以很方便的利用PC对移动设备的连接调试、包括获取设备详情、安装|卸载apk、重启、监控设备信息、同时给可以进行app开启、触发点击、滑动、放大等手势事件、它可以用来做app的自动化测试和手机群控!
安装
brew tap facebook/fb
brew install idb-companion
pip3.6 install fb-idb
idb指令
#查看当前pc上的所有移动设备包括模拟器信息
idb list-targets
#启动一台设备
idb boot UDID
#连接
idb connect idb connect COMPANION_HOST COMPANION_PORT
#打开某app
idb launch com.huya.hyatWIFIAssistant.cx
#点击屏幕
idb ui botton tap x y
idb_companion
这idb_companion是一个gRPC在 macOS 上运行的 Objective-C++ 服务器。它与用于自动化模拟器和设备的本机 API 对话。它链接FBSimulatorControl和FBDeviceControl框架,它们是整个idb项目的一部分。
当它idb_companion充当gRPC服务器时,它会为单个iOS 目标(设备或模拟器)执行此操作。
此外,idb_companion还有一些命令是在 python CLI 中故意不可用的,这些操作与 iOS 设备管理或模拟器生命周期的操作有关。
也就是说它可以通过host:port方式远程控制设备!这个很强大!
idb用途
- 自动化测试
- iOS手机群控
个人感觉用它来做自动化测试的话不是很方便、自动化测试利用Appium的WDA、结合其封装的python客户端可以更高效的编写自动化测试流程、因为它提供非常多的元素查找方式、tap、swipe、scroll等事件很方便很好用!