You need to enable JavaScript to run this app.
导航
控制应用 ControlApplication
最近更新时间:2024.05.09 17:19:40首次发布时间:2022.03.25 20:26:26

管理已安装的应用,包含卸载、启用、停用、启动、停止(异步)。

请求方式

使用 POST 方式发起请求。

请求参数

下表仅列出了接口特有的请求参数和部分公共参数。完整的公共参数列表,参考 公共请求参数

字段
位置
类型
必填
说明
ActionQueryString公共参数,OpenAPI 接口名称ControlApplication
VersionQueryString公共参数,OpenAPI 接口版本2020-10-25

Body 参数

字段
类型
必填
说明
product_idString业务 ID,可在「云手机控制台-业务管理-业务详情」中获取

object_type

String

对象的类别,可选枚举值包括:

  • instance(对指定实例为对象进行操作)
  • host(对云机下的所有实例进行操作)
object_id_listArray of String对象 ID 列表,需要与指定的对象类别匹配,不可传入空列表
package_nameString应用包名,例如:com.pkgname

operation

String

应用控制具体操作,可选枚举值包括:

  • uninstall(卸载)
  • enable(启用)
  • disable(停用)
  • start(启动,支持不传入 pack activity,参考以下 Operation 操作说明
  • stop(停止)

Operation 操作说明

操作名称执行命令说明
uninstall执行 pm uninstall [package_name]
enable执行 pm enable [package_name]
disable执行 pm disable-user [package_name]

start

执行 am start [-n] [package_name],支持传入或者不传入具体的 activity:

  • 不传入 activity时:例如 com.abc.xyz, 启动 [android.intent.action.MAIN] activity, 如果 apk 不存在该 activity,则报错;
  • 传入 activity 时, 例如 com.abc.xyz/.MainActivity

举例来说,对于有前台 UI 的应用, 可以在云手机内部启动应用后,在命令行输入 dumpsys activity |grep -i mResumedActivity | awk -F " " '{print $4}' 来确认具体的字段内容

stop执行 am force-stop [package_name]

返回结果

通用返回参数,请参考 ResponseMetadata 结构说明

Result 字段包含以下参数:

字段
类型
说明
job_idString任务 ID,用于通过调用 GetJobDetails 接口,获取任务执行结果
passed_id_listString[]成功的实例 ID 列表
failed_id_listArray of objects失败的实例 ID 及对应错误信息列表,参考 List<CaseWithMsg> 结构说明

List<CaseWithMsg> 结构说明

字段
类型
说明
idString实例 ID
msgString操作失败的错误信息

示例

请求示例

POST https://open.volcengineapi.com?Action=ControlApplication
&Version=2020-10-25
&<通过header传入的公共请求参数>

{
    "product_id": "14677396781xxxxxxxx",
    "object_type": "instance",
    "object_id_list": ["i-1726334685xxxxxx","i-1726334685xxxxxx"],
    "package_name": "com.pkgname",
    "operation": "start"
}

返回示例

{
    "ResponseMetadata": {
        "Action": "ControlApplication",
        "Region": "cn-north-1",
        "RequestId": "202203091616060101980160152617650B",
        "Service": "iPaaS",
        "Version": "2020-10-25"
    },
    "Result": {
        "job_id": "req-7072700279036072223",
        "passed_id_list": [
            "i-1726334685xxxxxx",
            "i-1726334685xxxxxx"
        ],
        "failed_id_list": []
    }
}