- 设备管理类API:

- `pair(device: Device) -> bool`:配对一个iOS设备,返回是否成功。

- `unpair(device: Device) -> bool`:解除配对一个iOS设备,返回是否成功。

- `list_devices() -> List[Device]`:列出所有已连接的iOS设备,返回一个设备对象的列表。

- `get_device_info(device: Device) -> dict`:获取一个iOS设备的信息,返回一个包含设备名称、型号、系统版本、序列号等字段的字典。

- `get_device_time(device: Device) -> datetime.datetime`:获取一个iOS设备的当前时间,返回一个datetime对象。

- `set_developer_mode(device: Device, enable: bool) -> None`:设置一个iOS设备的开发者模式,enable参数为True表示开启,False表示关闭。

- `reboot(device: Device) -> None`:重启一个iOS设备。

- 应用管理类API:

- `install_app(device: Device, app_path: str) -> None`:安装一个应用到iOS设备上,app_path参数为应用包的路径。

- `uninstall_app(device: Device, bundle_id: str) -> None`:卸载一个应用从iOS设备上,bundle_id参数为应用包的标识符。

- `launch_app(device: Device, bundle_id: str, args: List[str] = None, env: dict = None, wait_for_debugger=False) -> int`:启动一个应用在iOS设备上,bundle_id参数为应用包的标识符,args参数为应用启动时传递的命令行参数,env参数为应用启动时设置的环境变量,wait_for_debugger参数为True表示等待调试器连接后再启动。返回一个表示进程ID的整数。

- `stop_app(device: Device, pid: int) -> None`:停止一个应用在iOS设备上,pid参数为进程ID。

- `list_apps(device: Device) -> List[AppInfo]`:列出所有已安装的应用在iOS设备上,返回一个包含应用信息对象的列表。

- XCTest运行类API:

- `run_xctest(device: Device, bundle_id: str, test_bundle_id: str, test_cases=None, timeout=0.0) -> List[XCTestResult]`:运行一个XCTest测试计划在iOS设备上,bundle_id参数为被测应用包的标识符,test_bundle_id参数为测试包的标识符,test_cases参数为要运行的测试用例名称列表,timeout参数为超时时间(秒)。返回一个包含测试结果对象的列表。

- `start_wda(device: Device, bundle_id: str = "com.facebook.WebDriverAgentRunner.xctrunner", xctest_path=None, wda_root=None, mjpeg_server_port=9100, wda_port=8100) -> WebDriverAgent`:启动一个WebDriverAgent服务在iOS设备上,bundle_id参数为WebDriverAgentRunner应用包的标识符,xctest_path参数为WebDriverAgentRunner.xctest包的路径,wda_root参数为WebDriverAgent项目根目录路径,mjpeg_server_port参数为视频流服务端口号,wda_port参数为WebDriverAgent服务端口号。返回一个WebDriverAgent对象。

- 性能采集类API:

- `get_cpu_usage(device: Device, pid: int) -> float`:获取一个进程在iOS设备上的CPU使用率(百分比),pid参数为进程ID。返回一个浮点数。

- `get_memory_usage(device: Device, pid: int) -> float`:获取一个进程在iOS设备上的内存使用量(MB),pid参数为进程ID。返回一个浮点数。

- `get_fps(device: Device, pid: int) -> float`:获取一个进程在iOS设备上的帧率(FPS),pid参数为进程ID。返回一个浮点数。

- `get_power_usage(device: Device, pid: int) -> float`:获取一个进程在iOS设备上的功耗(mW),pid参数为进程ID。返回一个浮点数。

- 文件操作类API:

- `upload_file(device: Device, src_path: str, dst_path: str) -> None`:上传一个文件到iOS设备上,src_path参数为源文件路径,dst_path参数为目标文件路径。

- `download_file(device: Device, src_path: str, dst_path: str) -> None`:下载一个文件从iOS设备上,src_path参数为源文件路径,dst_path参数为目标文件路径。

- `delete_file(device: Device, path: str) -> None`:删除一个文件在iOS设备上,path参数为文件路径。

- `list_files(device: Device, path: str) -> List[FileInfo]`:列出一个目录下的所有文件在iOS设备上,path参数为目录路径。返回一个包含文件信息对象的列表。

- Crash日志操作类API:

- `get_crash_logs(device: Device) -> List[CrashLog]`:获取所有的Crash日志在iOS设备上,返回一个包含Crash日志对象的列表。

- `delete_crash_logs(device: Device) -> None`:删除所有的Crash日志在iOS设备上。

tidevice中常用api 浅谈的更多相关文章

  1. C++ STL中的常用容器浅谈

    STL是C/C++开发中一个非常重要的模板,而其中定义的各种容器也是非常方便我们大家使用.下面,我们就浅谈某些常用的容器.这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点.STL中 ...

  2. kafka中常用API的简单JAVA代码

    通过之前<kafka分布式消息队列介绍以及集群安装>的介绍,对kafka有了初步的了解.本文主要讲述java代码中常用的操作. 准备:增加kafka依赖 <dependency> ...

  3. Thread中常用API

    1.sleep方法 线程的 sleep 方法会使线程休眠指定的时间长度.休眠的意思是,当前逻辑执行到此不再继续执行,而是等待指定的时间.但在这段时间内,该线程持有的锁并不会释放.这样设计很好理解,因为 ...

  4. RESTful API浅谈

    一.REST的由来 全称:REST,全称是Resource Representational State Transfer,即:资源在网络中以某种形式进行状态转移.————所谓状态的转移,可参考< ...

  5. Salesforce LWC学习(十六) Validity 在form中的使用浅谈

    本篇参考: https://developer.salesforce.com/docs/component-library/bundle/lightning-input/documentation h ...

  6. Java 中 常用API概述之 Math, Object, String,StringBuffer类,Arrays,Integer类

    Math Math类包含执行基本数字运算的方法,如基本指数,对数,平方根和三角函数. 与StrictMath类的一些数字方法不同,Math类的StrictMath所有Math都没有定义为返回比特位相同 ...

  7. Web javascript 中常用API合集

    来源于:https://www.kancloud.cn/dennis/tgjavascript/241852 一.节点 1.1 节点属性 Node.nodeName //返回节点名称,只读 Node. ...

  8. Bootstrap中的datetimepicker浅谈

    从古至今,人们都习惯用某个时间来标记某个事件的发生.我们在写管理后台的时候,重中之中也是这个时间的设置.在问题出现的时候,我们是查看日志的时候,就可以根据这个时间段来查找这个问题出现点. 在使用时间控 ...

  9. Android开发用到的几种常用设计模式浅谈(一):组合模式

    1:应用场景 Android中对组合模式的应用,可谓是泛滥成粥,随处可见,那就是View和ViewGroup类的使用.在android UI设计,几乎所有的widget和布局类都依靠这两个类.组合模式 ...

  10. [UE4]C++中extern关键字浅谈

    变量声明和变量是有区别的 extern int i; //只是声明i而非定义i int j; //声明而且还定义了j 任何一个显式初始化的声明都将成为定义,而不管有没有extern,extern语句一 ...

随机推荐

  1. Codeforces Global Round 13 A-D题题解

    写在前边 链接:Codeforces Global Round 13 \(A,B,C,D\) A. K-th Largest Value 链接:A题链接 题目大意: 有一个字串只由\(0.1\)组成, ...

  2. Ubuntu 20.04 使用 vlmscd 搭建 KMS 服务端

    前言 为了内网系统激活需要,搭建此客户端. 1. 下载二进制文件 打开项目官网:https://github.com/Wind4/vlmcsd 下载项目二进制文件: 选择对应系统和架构 选择性能较好的 ...

  3. Go语言数组与切片学习总结

    一.数组 数组的定义:相同类型的数据集合 go语言中数组的索引从0开始 没有赋值的数值型数组,默认值为0 数组一旦被创建,它的大小就是不可改变的 (1)声明数组与打印 var 变量名 [大小]变量类型 ...

  4. Git使用(GitEE)

    Git分布式版本控制工具 1. Git概述 1.1 Git历史 Git 诞生于一个极富纷争大举创新的年代.Linux 内核开源项目有着为数众多的参与者. 绝大多数的 Linux 内核维护工作都花在了提 ...

  5. 使用汇编和反汇编引擎写一个x86任意地址hook

    最简单的Hook 刚开始学的时候,用的hook都是最基础的5字节hook,也不会使用hook框架,hook流程如下: 构建一个jmp指令跳转到你的函数(函数需定义为裸函数) 保存被hook地址的至少5 ...

  6. bash shell笔记整理——head命令

    作用 我直接搬运官方英文了,这英文真的简单直白了,我英语辣鸡...毕竟我学历不行,觉得翻译不好就直接自己来吧.. Print the first 10 lines of each FILE to st ...

  7. X2加密的PcbDoc类型导出内容有误,不加密的PcbDoc导出的表格正常

    出现该类问题说明读取PcbDoc文件文件出了文件,加密类型添加tmp类型即可

  8. ElasticSearch之cat thread pool API

    命令样例如下: curl -X GET "https://localhost:9200/_cat/thread_pool?v=true&pretty" --cacert $ ...

  9. 2023.2 IDEA安装激活教程

    1.下载安装IntelliJ IDEA 先去官网下载,我这里下载的是最新版本的2023.2,测试过2023最新版本以及2022版本以上的版本没问题. 安装然后打开 提示要输入激活码,先关闭应用,等下再 ...

  10. Python——第二章:集合 Set

    set集合,集合的特点是无序的 写法:s = {1,2,3} 但是如果内容是空的,它不是set集合,而是dict字典 s = {} print(type(s)) #输出结果 <class 'di ...