一、tidevice简介

tidevice是阿里内部的一个小组用来做iOS自动化用的工具, 这个工具是纯Python写成,所以也是跨平台的,支持在Windows、Linux、Mac上运行。

其中网上最难找的应该是这个如何不依赖 xcode 启动 WebDriverAgent,这个工具就可以做到,因为不依赖 Xcodebuild,所以即使是 Windows或者Linux也能跑起来 iOS 自动化

二、tidevice原理

usbmux通信协议:实现 Mac/Windows/Linux与 iOS设备服务间的通信。usbmux 本身是socket套接字,通过截获、破解等手段,结合开源界的成果,用python 进行模拟,从而实现了当前工具已有的所有功能

Mac端:usbmuxd 是苹果的一个服务,这个服务主要用于在USB协议上实现多路TCP连接,将USB通信抽象为TCP通信。苹果的iTunes、Xcode,都直接或间接地用到了这个服务。

Linux / Windows端:本身是没有usbmux的,Windows还依赖 AppleApplicationSupport和AppleMobileDeviceSupport这两个服务,通过安装itunes环境即可安装对应服务。

三、tidevice安装

本篇tidevice安装主要介绍时在mac上的安装,windows上安装tidevice可以参考文章https://blog.csdn.net/dou_being/article/details/120401944

  1. python版本要3.6+以上,配置python环境变量:

    (1)open ~/.bash_profile
    (2)添加python3.9的bin目录:/Library/Frameworks/Python.framework/Versions/3.9/bin
    (3)使环境变量配置立即生效:source ~/.bash_profile
  2. 安装tidevice:

    (1)推荐安装方式:python3 install -U “tidevice[openssl]”
    (2)如果上面方式安装失败可以使用此方式:pip3 install -U tidevice

    安装成功截图:

  3.  查看tidevice版本号:tidevice version

  4.  列出连接的设备:tidevice list或者tidevice list --json

5、应用管理常用命令:

(1)安装应用:tidevice install example.ipa
(2)指定设备安装:tidevice --udid $UDID install https://example.org/example.ipa
(3)卸载应用:tidevice uninstall com.example.demo
(4)启动应用:tidevice launch com.example.demo
(5)停止应用:tidevice kill com.example.demo
(6)查看已安装应用:tidevice applist
(7)查看运行中的应用:tidevice ps 或tidevice ps —json output as json

欢迎关注公众号:

Logo

一站式 AI 云服务平台

更多推荐