AndroidInstance Class Reference

Inherits from NSObject
Declared in AndroidInstance.h
AndroidInstance.m

Overview

CaiSDK - AndroidInstance 子模块

需要正常初始化CaiSDK后,再调用AndroidInstance相关接口

AndroidInstance是CaiSDK的子模块,用于操作云Android设备,包括几类操作能力: 1. 连接单个实例看到云手机画面,以及云手机各种操作 2. 通过截图预览多个云手机的画面 3. 其他各类功能操作

– setMasterWithInstanceId:

设置主控设备

- (void)setMasterWithInstanceId:(NSString *_Nonnull)instanceId

Parameters

instanceId

主控设备的instanceId

Discussion

设置主控设备

Declared In

AndroidInstance.h

– requestStreamWithInstanceId:status:level:

请求被控串流

- (void)requestStreamWithInstanceId:(NSString *_Nonnull)instanceId status:(NSString *_Nonnull)status level:(NSString *_Nonnull)level

Parameters

instanceId

请求串流的instanceId

status

串流状态("open"开启/“close"关闭)

level

串流质量等级("low"/“normal”/“high")

Discussion

请求被控串流

Declared In

AndroidInstance.h

– setSyncList:

设置同步实例列表,每次设置都会覆盖上次设置的列表。如果需要停止同步,传入nil或空列表。

- (void)setSyncList:(NSArray<NSString*> *_Nullable)list

Parameters

list

需要同步的instanceId列表

Discussion

设置同步实例列表,每次设置都会覆盖上次设置的列表。如果需要停止同步,传入nil或空列表。

Declared In

AndroidInstance.h

– joinGroupControlWithInstanceIds:clientSessions:

中途加入群控

- (void)joinGroupControlWithInstanceIds:(NSArray<NSString*> *_Nonnull)instanceIds clientSessions:(nullable NSArray<NSString*> *)clientSessions

Parameters

instanceIds

需要加入的实例列表

clientSessions

clientSession(可选)

Discussion

中途加入群控

Declared In

AndroidInstance.h

– setImageEventWithInterval:quality:screenshotWidth:screenshotHeight:

设置截图事件

- (void)setImageEventWithInterval:(NSInteger)interval quality:(nullable NSNumber *)quality screenshotWidth:(int)screenshotWidth screenshotHeight:(int)screenshotHeight

Parameters

interval

截图事件的间隔(毫秒)

quality

截图质量(0-100,可选)

screenshotWidth

截图宽度

screenshotHeight

截图高度

Discussion

设置截图事件

Declared In

AndroidInstance.h

– stopImageEvent

停止截图事件

- (void)stopImageEvent

Discussion

停止截图事件

Declared In

AndroidInstance.h

– transMessageWithPackageName:message:

发送App binder消息(单连接适用)

- (void)transMessageWithPackageName:(NSString *_Nonnull)packageName message:(NSString *_Nonnull)message

Parameters

packageName

应用包名

message

消息内容

Discussion

发送App binder消息(单连接适用)

Declared In

AndroidInstance.h

– getInstanceImageWithInstanceId:

获取实例截图信息,quality默认20,分辨率720x1280

- (NSString *_Nullable)getInstanceImageWithInstanceId:(NSString *_Nonnull)instanceId

Parameters

instanceId

实例Id

Return Value

截图URL

Discussion

获取实例截图信息,quality默认20,分辨率720x1280

Declared In

AndroidInstance.h

– getInstanceImageWithInstanceId:quality:screenshotWidth:screenshotHeight:

获取实例截图信息

- (NSString *_Nullable)getInstanceImageWithInstanceId:(NSString *_Nonnull)instanceId quality:(int)quality screenshotWidth:(int)screenshotWidth screenshotHeight:(int)screenshotHeight

Parameters

instanceId

实例Id

quality

截图质量(0-100,可选,默认20)

screenshotWidth

截图宽度

screenshotHeight

截图高度

Return Value

截图URL

Discussion

获取实例截图信息

Declared In

AndroidInstance.h

– uploadWithInstanceId:files:completion:

向云端实例上传文件

- (void)uploadWithInstanceId:(NSString *_Nonnull)instanceId files:(NSArray<CaiUploadFileItem*> *_Nonnull)files completion:(nullable CaiUploadFilesCompletion)completion

Parameters

instanceId

实例 Id

files

上传的文件

completion

任务完成的回调

Discussion

向云端实例上传文件

Declared In

AndroidInstance.h

– uploadMediaWithInstanceId:files:completion:

向云端实例上传文件

- (void)uploadMediaWithInstanceId:(NSString *_Nonnull)instanceId files:(NSArray<CaiUploadMediaFileItem*> *_Nonnull)files completion:(nullable CaiUploadMediaFilesCompletion)completion

Parameters

instanceId

实例 Id

files

上传的文件

completion

任务完成的回调

Discussion

向云端实例上传文件

Declared In

AndroidInstance.h

– getInstanceDownloadAddressWithInstanceId:path:

获取实例下载地址

- (NSString *_Nonnull)getInstanceDownloadAddressWithInstanceId:(NSString *_Nonnull)instanceId path:(NSString *_Nonnull)path

Parameters

instanceId

实例 Id

path

下载路径

Return Value

response address - 下载地址

Discussion

获取实例下载地址

Declared In

AndroidInstance.h

– getInstanceDownloadLogcatAddressWithInstanceId:recentDay:

获取logcat日志下载地址

- (NSString *_Nonnull)getInstanceDownloadLogcatAddressWithInstanceId:(NSString *_Nonnull)instanceId recentDay:(int)recentDay

Parameters

instanceId

实例 Id

recentDay

最近几天的日志

Return Value

response address - 下载地址

Discussion

获取logcat日志下载地址

Declared In

AndroidInstance.h

– setLocationWithParams:completion:

批量设置设备GPS位置信息

- (void)setLocationWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(nullable CaiBatchTaskCompletion)completion

Parameters

params

位置信息参数字典 - key: instanceId (NSString) - value: 位置参数 (NSDictionary),结构为: @{ @“Longitude”: @(经度值), // 经度 (double) @“Latitude”: @(纬度值) // 纬度 (double) }

completion

批量操作回调

Discussion

批量设置设备GPS位置信息

为多台设备设置模拟GPS位置信息,支持同时更新多个设备的定位数据

参数结构说明:

Declared In

AndroidInstance.h

– setResolutionWithParams:completion:

批量设置设备分辨率

- (void)setResolutionWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

分辨率参数字典 - key: instanceId (NSString) - value: 分辨率参数 (NSDictionary),结构为: @{ @“Width”: @(宽度值), // 宽度像素 (NSInteger) @“Height”: @(高度值), // 高度像素 (NSInteger) @“DPI”: @(DPI值) // 像素密度 (NSInteger,可选) }

completion

批量操作回调

Discussion

批量设置设备分辨率

动态调整设备屏幕分辨率,支持同时修改多个设备的显示设置

参数结构说明:

Declared In

AndroidInstance.h

– pasteWithParams:completion:

批量粘贴文本到设备

- (void)pasteWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

粘贴文本参数字典 - key: instanceId (NSString) - value: 粘贴参数 (NSDictionary),结构为: @{ @“Text”: @“粘贴文本” // 要粘贴的文本内容 }

completion

批量操作回调

Discussion

批量粘贴文本到设备

模拟在多个设备输入框执行粘贴操作

参数结构说明:

Declared In

AndroidInstance.h

– sendClipboardWithParams:completion:

批量发送文本到设备剪切板

- (void)sendClipboardWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

剪切板文本参数字典 - key: instanceId (NSString) - value: 文本参数 (NSDictionary),结构为: @{ @“Text”: @“剪切板内容” // 要复制到剪切板的文本 }

completion

批量操作回调

Discussion

批量发送文本到设备剪切板

将文本复制到多个设备的系统剪切板

参数结构说明:

Declared In

AndroidInstance.h

– shakeWithParams:completion:

批量执行摇一摇操作

- (void)shakeWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{} (保留未来扩展)

completion

批量操作回调

Discussion

批量执行摇一摇操作

在多个设备上模拟摇一摇手势(加速度传感器事件)

参数结构说明:

Declared In

AndroidInstance.h

– blowWithParams:completion:

批量执行吹一吹操作

- (void)blowWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{} (保留未来扩展)

completion

批量操作回调

Discussion

批量执行吹一吹操作

在多个设备上模拟吹一吹

参数结构说明:

Declared In

AndroidInstance.h

– setSensorWithParams:completion:

批量设置设备传感器信息

- (void)setSensorWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

操作参数字典 - key: instanceId (NSString) - value: 传感器参数 (NSDictionary),结构为: @{ @“Type”: sensorType, // 传感器类型字符串 (必需) @“Values”: valuesArray // 传感器数值数组 (必需) }

completion

批量操作回调

传感器参数详解: - Type (NSString): 支持的传感器类型: - @“accelerometer":加速度计 (单位: m/s²) - @"gyroscope":陀螺仪 (单位: rad/s)

  • Values (NSArray): 3维数值数组,依次表示 x/y/z 轴的值,格式为: @[ @(xValue), @(yValue), @(zValue) ]

Discussion

批量设置设备传感器信息

为多台设备设置加速度计或陀螺仪传感器数据,用于模拟设备的运动状态。

参数结构说明:

Declared In

AndroidInstance.h

– sendTransMessageWithParams:completion:

批量发送App binder消息

- (void)sendTransMessageWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

消息参数字典 - key: instanceId (NSString) - value: 消息参数 (NSDictionary),结构为: @{ @“PackageName”: @“应用包名”, // 接收消息的应用包名 @“Msg”: @“消息内容” // 要发送的自定义消息 }

completion

批量操作回调

Discussion

批量发送App binder消息

向多台设备上的指定应用发送自定义消息

参数结构说明:

Declared In

AndroidInstance.h

– describeInstancePropertiesWithParams:completion:

批量查询实例属性

- (void)describeInstancePropertiesWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(nullable CaiDescribeInstancePropertiesCompletion)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

批量操作回调

响应数据结构: @code { “DeviceInfo”: { “Brand”: “Samsung”, “Model”: “Galaxy S24” }, “ProxyInfo”: { “Enabled”: true, “Protocol”: “socks5”, … }, “GPSInfo”: { “Longitude”: 121.4737, “Latitude”: 31.2304 }, // 其他属性… } @endcode

Discussion

批量查询实例属性

查询多台设备的基础属性和配置信息,如设备品牌、型号、代理设置等

Declared In

AndroidInstance.h

– listUserAppsWithParams:completion:

查询已安装第三方应用

- (void)listUserAppsWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiListUserAppsCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调

Discussion

查询已安装第三方应用

获取设备上安装的所有第三方应用程序列表

Declared In

AndroidInstance.h

– modifyInstancePropertiesWithParams:completion:

批量修改设备属性

- (void)modifyInstancePropertiesWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

属性参数字典 - key: instanceId (NSString) - value: 属性字典 (NSDictionary),包含以下可选字段:

属性字典字段详解: - DeviceInfo (NSDictionary): 设备品牌型号信息 - Brand (NSString): 设备品牌 (如 @“Samsung”) - Model (NSString): 设备型号 (如 @“Galaxy S24”)

  • ProxyInfo (NSDictionary): 代理设置
  • Enabled (BOOL): 是否启用代理 (NSNumber包装)
  • Protocol (NSString): 代理协议 (如 @“socks5”)
  • Host (NSString): 代理主机地址
  • Port (NSNumber): 代理端口
  • User (NSString): 代理用户名
  • Password (NSString): 代理密码

  • GPSInfo (NSDictionary): GPS位置信息

  • Longitude (NSNumber): 经度值 (double)
  • Latitude (NSNumber): 纬度值 (double)

  • SIMInfo (NSDictionary): SIM卡信息

  • State (NSNumber): SIM卡状态 (0=未激活, 1=已激活)
  • PhoneNumber (NSString): 手机号码
  • IMSI (NSString): 国际移动用户识别码
  • ICCID (NSString): 集成电路卡识别码

  • LocaleInfo (NSDictionary): 地区设置

  • Timezone (NSString): 时区设置 (如 @“Asia/Shanghai”)

  • LanguageInfo (NSDictionary): 语言设置

  • Language (NSString): 语言代码 (如 @“zh”)
  • Country (NSString): 国家代码 (如 @“CN”)

  • ExtraProperties (NSArray): 额外属性列表

  • 数组元素为字典 @{ @“Key”: @“属性名”, @“Value”: @“属性值” }
completion

完成回调 (CaiBatchTaskCompletion)

使用示例: @code NSDictionary *properties = @{ @“cai-device-001”: @{ @“DeviceInfo”: @{ @“Brand”: @“Samsung”, @“Model”: @“Galaxy S24” }, @“ProxyInfo”: @{ @“Enabled”: @YES, @“Protocol”: @“socks5”, @“Host”: @“proxy.example.com”, @“Port”: @1080, @“User”: @“user123”, @“Password”: @“pass123” }, @“GPSInfo”: @{ @“Longitude”: @121.4737, @“Latitude”: @31.2304 }, @“SIMInfo”: @{ @“State”: @1, @“PhoneNumber”: @“+8613812345678”, @“IMSI”: @“460001234567890”, @“ICCID”: @“89860123456789012345” }, @“LocaleInfo”: @{ @“Timezone”: @“Asia/Shanghai” }, @“LanguageInfo”: @{ @“Language”: @“zh”, @“Country”: @“CN” }, @“ExtraProperties”: @[ @{ @“Key”: @“custom_property1”, @“Value”: @“value1” }, @{ @“Key”: @“custom_property2”, @“Value”: @“value2” } ] } };

[androidInstance modifyInstancePropertiesWithParams:properties completion:^(CaiBatchTaskResponse response, NSError error) { if (error) { NSLog(@“系统错误: %@”, error); return; }

if (response.code != 0) { NSLog(@“整体操作失败: [%ld] %@”, (long)response.code, response.message); return; }

[response.deviceResponses enumerateKeysAndObjectsUsingBlock:^(NSString deviceId, CaiDeviceResponse deviceResp, BOOL *stop) { if (deviceResp.code == 0) { NSLog(@“设备 %@ 修改设备属性成功”, deviceId); } else { NSLog(@“设备 %@ 修改设备属性失败: [%ld] %@”, deviceId, (long)deviceResp.code, deviceResp.msg); } }]; }]; @endcode

Discussion

批量修改设备属性

更新多台设备的硬件或软件属性配置,支持修改设备信息、代理设置、位置信息、SIM卡状态等

Declared In

AndroidInstance.m

– unInstallByPackageNameWithParams:completion:

批量卸载应用

- (void)unInstallByPackageNameWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

卸载参数字典 - key: instanceId (NSString) - value: @{@“PackageName”: @“应用包名”}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量卸载应用

从多台设备卸载指定的应用程序

Declared In

AndroidInstance.h

– startAppWithParams:completion:

批量启动应用

- (void)startAppWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

启动参数字典 - key: instanceId (NSString) - value: @{ @“PackageName”: @“应用包名”, @“ActivityName”: @“Activity” }

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量启动应用

在多个设备上启动指定的应用程序和Activity

Declared In

AndroidInstance.h

– stopAppWithParams:completion:

批量停止应用

- (void)stopAppWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

停止参数字典 - key: instanceId (NSString) - value: @{@“PackageName”: @“应用包名”}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量停止应用

停止在多个设备上运行的指定应用程序

Declared In

AndroidInstance.h

– clearAppDataWithParams:completion:

批量清除应用数据

- (void)clearAppDataWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

清除参数字典 - key: instanceId (NSString) - value: @{@“PackageName”: @“应用包名”}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量清除应用数据

清除指定应用程序在设备上的应用数据

Declared In

AndroidInstance.h

– enableAppWithParams:completion:

批量启用应用

- (void)enableAppWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

启用参数字典 - key: instanceId (NSString) - value: @{@“PackageName”: @“应用包名”}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量启用应用

启用设备上被禁用的应用程序

Declared In

AndroidInstance.h

– disableAppWithParams:completion:

批量禁用应用

- (void)disableAppWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

禁用参数字典 - key: instanceId (NSString) - value: @{@“PackageName”: @“应用包名”}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量禁用应用

禁用设备上的指定应用程序(相当于"冻结"应用)

Declared In

AndroidInstance.h

– startCameraMediaPlayWithParams:completion:

批量在摄像头播放媒体文件

- (void)startCameraMediaPlayWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

播放参数字典 - key: instanceId (NSString) - value: @{ @“FilePath”: @“视频文件路径”, @“Loops”: @(循环次数) // 负数表示无限循环 }

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量在摄像头播放媒体文件

在设备摄像头模拟视频流输入

Declared In

AndroidInstance.h

– stopCameraMediaPlayWithParams:completion:

批量停止摄像头媒体播放

- (void)stopCameraMediaPlayWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量停止摄像头媒体播放

停止在设备摄像头上的媒体文件播放

Declared In

AndroidInstance.h

– describeCameraMediaPlayStatusWithParams:completion:

批量查询摄像头播放状态

- (void)describeCameraMediaPlayStatusWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiDescribeCameraMediaPlayStatusCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调

Discussion

批量查询摄像头播放状态

获取当前在设备摄像头上的媒体播放状态

Declared In

AndroidInstance.h

– displayCameraImageWithParams:completion:

批量在摄像头显示图片

- (void)displayCameraImageWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

图片参数字典 - key: instanceId (NSString) - value: @{@“FilePath”: @“图片文件路径”}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量在摄像头显示图片

在设备摄像头模拟输入静态图片

Declared In

AndroidInstance.h

– modifyKeepFrontAppStatusWithParams:completion:

修改前台应用保活状态

- (void)modifyKeepFrontAppStatusWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

保活参数字典 - key: instanceId (NSString) - value: 保活参数 @{ @“PackageName”: @“应用包名”, @“Enable”: @(YES/NO), // 是否启用保活 @“RestartInterValSeconds”: @(秒数) // 重新拉起最长间隔 }

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

修改前台应用保活状态

配置指定应用在设备前台崩溃或被关闭时的自动重启策略

Declared In

AndroidInstance.h

– describeKeepFrontAppStatusWithParams:completion:

查询前台应用保活状态

- (void)describeKeepFrontAppStatusWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiDescribeKeepFrontAppStatusCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调

Discussion

查询前台应用保活状态

获取设备上已配置的前台应用保活设置

Declared In

AndroidInstance.h

– addKeepAliveListWithParams:completion:

批量添加后台保活应用

- (void)addKeepAliveListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

保活参数字典 - key: instanceId (NSString) - value: @{@“AppList”: @[@“应用包名1”, @“应用包名2”]}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量添加后台保活应用

将应用添加到设备后台保活列表,减少被系统杀死的概率

Declared In

AndroidInstance.h

– removeKeepAliveListWithParams:completion:

批量移除后台保活应用

- (void)removeKeepAliveListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

移除参数字典 - key: instanceId (NSString) - value: @{@“AppList”: @[@“应用包名1”, @“应用包名2”]}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量移除后台保活应用

从设备后台保活列表中移除指定应用

Declared In

AndroidInstance.h

– setKeepAliveListWithParams:completion:

批量设置后台保活列表

- (void)setKeepAliveListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

保活参数字典 - key: instanceId (NSString) - value: @{@“AppList”: @[@“应用包名1”, @“应用包名2”]}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量设置后台保活列表

完全覆盖设备后台保活列表(替换现有列表)

Declared In

AndroidInstance.h

– describeKeepAliveListWithParams:completion:

批量查询后台保活列表

- (void)describeKeepAliveListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiDescribeKeepAliveListCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调

Discussion

批量查询后台保活列表

获取设备当前的后台保活应用列表

Declared In

AndroidInstance.h

– clearKeepAliveListWithParams:completion:

批量清空后台保活列表

- (void)clearKeepAliveListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量清空后台保活列表

清空设备上所有后台保活应用

Declared In

AndroidInstance.h

– muteWithParams:completion:

批量设置设备静音

- (void)muteWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

静音参数字典 - key: instanceId (NSString) - value: @{@“Mute”: @(YES/NO)} // YES:静音, NO:取消静音

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量设置设备静音

将多台设备的媒体音量设为静音

Declared In

AndroidInstance.h

– mediaSearchWithParams:completion:

批量搜索媒体库文件

- (void)mediaSearchWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiMediaSearchCompletion _Nullable)completion

Parameters

params

搜索参数字典 - key: instanceId (NSString) - value: @{@“Keyword”: @“搜索关键词”}

completion

完成回调

Discussion

批量搜索媒体库文件

在多台设备上搜索媒体库文件

Declared In

AndroidInstance.h

– rebootWithParams:completion:

批量重启设备

- (void)rebootWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量重启设备

重启多台设备

Declared In

AndroidInstance.h

– listAllAppsWithParams:completion:

批量查询所有应用列表

- (void)listAllAppsWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiListAllAppsCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调

Discussion

批量查询所有应用列表

获取设备上安装的所有应用列表

Declared In

AndroidInstance.h

– moveAppBackgroundWithParams:completion:

批量关闭应用到后台

- (void)moveAppBackgroundWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量关闭应用到后台

将前台应用切换到后台运行

Declared In

AndroidInstance.h

– addAppInstallBlackListWithParams:completion:

批量新增应用安装黑名单

- (void)addAppInstallBlackListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

黑名单参数字典 - key: instanceId (NSString) - value: @{@“AppList”: @[@“应用包名1”, @“应用包名2”]}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量新增应用安装黑名单

批量新增应用安装黑名单,新增时如果应用已安装,会进行卸载。

Note: 如果黑名单应用已安装,会被自动卸载

Declared In

AndroidInstance.h

– removeAppInstallBlackListWithParams:completion:

批量移除应用安装黑名单

- (void)removeAppInstallBlackListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

黑名单参数字典 - key: instanceId (NSString) - value: @{@“AppList”: @[@“应用包名1”, @“应用包名2”]}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量移除应用安装黑名单

从黑名单中移除应用,允许安装

Declared In

AndroidInstance.h

– setAppInstallBlackListWithParams:completion:

批量覆盖应用安装黑名单

- (void)setAppInstallBlackListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

黑名单参数字典 - key: instanceId (NSString) - value: @{@“AppList”: @[@“应用包名1”, @“应用包名2”]}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量覆盖应用安装黑名单

完全替换设备上的应用安装黑名单

Declared In

AndroidInstance.h

– describeAppInstallBlackListWithParams:completion:

批量查询应用安装黑名单

- (void)describeAppInstallBlackListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiDescribeAppInstallBlackListCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调

Discussion

批量查询应用安装黑名单

获取设备当前的应用安装黑名单

Declared In

AndroidInstance.h

– clearAppInstallBlackListWithParams:completion:

批量清空应用安装黑名单

- (void)clearAppInstallBlackListWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiBatchTaskCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) - value: 空字典 @{}

completion

完成回调 (CaiBatchTaskCompletion)

Discussion

批量清空应用安装黑名单

清空设备上的应用安装黑名单

Declared In

AndroidInstance.h

– getNavVisibleStatusWithParams:completion:

批量获取导航栏可见状态

- (void)getNavVisibleStatusWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiGetNavVisibleStatusCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) 设备实例ID - value: 空字典 @{} 表示不需要额外参数

completion

完成回调,返回导航栏状态结果 - response: CaiGetNavVisibleStatusResponse 对象,包含导航栏状态信息 - error: 网络或系统错误对象

Discussion

批量获取导航栏可见状态

查询设备导航栏(状态栏)的当前可见状态。导航栏通常包含时间、电池状态和通知图标等系统信息。

Declared In

AndroidInstance.h

– getSystemMusicVolumeWithParams:completion:

获取系统媒体音量

- (void)getSystemMusicVolumeWithParams:(NSDictionary<NSString*,NSDictionary*> *_Nonnull)params completion:(CaiGetSystemMusicVolumeCompletion _Nullable)completion

Parameters

params

设备参数字典 - key: instanceId (NSString) 设备实例ID - value: 空字典 @{} 表示不需要额外参数

completion

完成回调,返回音量信息 - response: CaiGetSystemMusicVolumeResponse 对象,包含音量信息 - error: 网络或系统错误对象

Discussion

获取系统媒体音量

查询设备当前的媒体音量设置。媒体音量控制音乐、视频、游戏和其他媒体内容的播放音量。

Declared In

AndroidInstance.h