| 对比项 | tidevice | py-ios-device(pyidevice) | sonic-ios-bridge(sib) |
| 是否开源 | √ | √ | √ |
| github地址 | https://github.com/alibaba/taobao-iphone-device | https://github.com/YueChen-C/py-ios-device | https://github.com/SonicCloudOrg/sonic-ios-bridge/releases |
| 最新版本 | V0.5.6 | V2.2.3.1 | V1.1.6 |
| 运行环境 | 支持运行在Mac,Linux,Windows上;python版本:3.6以上 | 支持运行在Mac、Windows上;python 版本: 3.7 + | 支持运行在Mac、Linux、Windows上 |
| 主要功能 | 做 iOS 自动化用的工具,也可以做性能数据采集(类似PerfDog) | 通过 Instruments 私有协议获取 iOS 相关性能指标数据。 | 基于 gidevice 作为底层iOS通信协议,以打造跨平台执行xctest、WebDriverAgentRunner、性能监听等等特色功能的命令行iOS调试工具。还在完善中 |
| 更新频次 (截止2022年8月13日) | 2个月前 | 1个月前 | 3天前(2022年8月10日) |
| 作者 | 圣翔 | chenpeijie & liyachao | SonicCloudOrg、作者微信:zyx291028775 |
| 联系邮件 | codeskyblue@gmail.com | cpjsf@163.com | 291028775@qq.com |
| 社区答疑 | QQ交流群: 134535547 (进群答案: ios) | QQ 交流群:37042417 | 微信群和社区https://sonic-cloud.wiki/ |
| 技术文档 | tidevice 开源:不依赖 Xcode 也能启动 WDA · TesterHome | 硬货来啦!!使用纯 python 实现 Instruments 协议,跨平台 (win,mac,linux) 获取 iOS 性能数据 · TesterHome | 不想折腾 python 环境又想跨平台进行 iOS 自动化怎么办?不妨试试 sib~ · TesterHome |
| 使用文档 | https://github.com/alibaba/taobao-iphone-device#readme | https://github.com/YueChen-C/py-ios-device/blob/main/README_CN.md | Sonic - 开源云真机测试平台 |
| 现有功能 | 截图 | (1)instruments 相关功能列表: | 运行wda:sib run wda -b your.wda.bundleId |
| 获取手机信息 | 获取系统的 内存、cpu 数据 | 运行xctest:sib run xctest -b your.wda.bundleId | |
| ipa包的安装和卸载 | 获取应用的 内存、cpu 数据 | 获取app列表:sib app list | |
| 根据bundleID 启动和停止应用 | 获取 FPS 数据 | sib app launch | |
| 列出安装应用信息 | 获取 网络数据 | 设备监听:sib devices listen | |
| 模拟Xcode运行XCTest,常用的如启动WebDriverAgent测试(此方法不依赖xcodebuild) | 设置模拟真机网络状态,例如 2g 、3g、 lost 等 | 卸载app:sib app uninstall | |
| 获取指定应用性能(CPU,MEM,FPS) | 设置模拟真机设备高压过热状态 | 快速截图:sib screenshoot | |
| 获取指定应用功耗(CPU,GPU,network,display,location) | 事件监听,监听app 启动,退出,后台运行等 | 查看进程:sib ps | |
| 文件操作 | 启动杀死 APP | 查看崩溃信息:sib crash | |
| Crash日志操作 | 运行 xcuitest 启动 wda | sib location | |
| 其他 | 导出内核堆栈快照 | 设置横竖屏:sib oritation | |
| 解析内核数据流 | 获取电池信息:sib battery | ||
| 获取 iOS GPU Counters | sib info | ||
| (2)其他功能列表 | sib添加文件管理功能,支持mkdir、tree、ls等等操作 | ||
| 描述文件管理 例如:安装 卸载 Fiddler 证书等 | ...... | ||
| 获取系统日志流 | |||
| 获取崩溃日志 | |||
| 获取抓包数据转发至 wiershark | |||
| 应用管理:安装、卸载、启动、查询、运行状态等 | |||
| 获取电池信息 | |||
| 使用命令 | usage: tidevice [-h] [-v] [-u UDID] [--socket SOCKET] | Usage: pyidevice [OPTIONS] COMMAND [ARGS]... | Usage: |
| positional arguments: | sib [command] | ||
| version show current version | Options: | ||
| list show connected iOS devices | --help Show this message and exit. | Available Commands: | |
| info show device info | afc manipulate device files through afc commands | ||
| date device current date | Commands: | app Manage your Apps. | |
| sysinfo show device system info | apps application options | battery Show battery of your device. | |
| appinfo inspect app info | battery get device battery | completion Generate the autocompletion script for the specified shell | |
| applist list packages | crash crash report options | crash Get CrashReport from your device | |
| battery show battery info | deviceinfo open an AFC shell for given bundle_id, assuming its... | devices Get iOS device list | |
| screenshot take screenshot | devices get device list | help Help about any command | |
| install install application | instruments run instruments service | info Show domain info in your device | |
| uninstall uninstall application | pcapd sniff device traffic | location Manage your location. | |
| reboot reboot device | profiles crash report options | mount Mount device development disk | |
| shutdown shutdown device | sandbox open an AFC shell for given bundle_id, assuming its... | orientation Listener for devices orientation | |
| parse parse ipa bundle id | syslog file management per application bundle | proxy Proxy unix process or port to your pc. | |
| watch watch device | ps Show process in your device | ||
| wait-for-device wait for device attached | pyidevice instruments | reboot Reboot or Shutdown device | |
| launch launch app with bundle_id | applist Show application list | run Run XCTest or WebDriverAgent | |
| kill kill by pid or bundle_id | condition Set system running condition | screenshot Get screenshot realtime | |
| ps show running processes | core_profile Dump stack snapshot information. | syslog Get syslog from your device. | |
| relay relay phone inner port to pc, same as iproxy | fps Get graphics fps | version Version code of sib | |
| xctest run XCTest | gpu_counters Metal GPU Counters | ||
| wdaproxy keep WDA running and relay WDA service to pc | information System information. | Flags: | |
| syslog print iphone syslog | kill Kill a process by its pid. | -h, --help help for sib | |
| fsync app file management | launch Launch a process. | ||
| dumpfps dump fps | monitor Get monitor performance data | Use "sib [command] --help" for more information about a command. | |
| developer mount developer image to device | network_process Print process about current network activity. | ||
| pair pair device | networking Print information about current network activity. | ||
| perf performance of app | notifications Get mobile notifications | ||
| test command for developer | runningProcesses Show running process list | ||
| stackshot Dump stack snapshot information. | |||
| sysmontap Get performance data | |||
| xcode_energy Print process about current network activity. | |||
| xcuitest Run XCTest required WDA installed. | |||
| 其它 | 性能数据获取基于py-ios-device | 基于gidevice |