# APP控制指令
注意
该指令只适用于技能协议v2.1,只可用于iFLYOS的技能。
# 指令说明
该指令用于让技能控制安卓系统上的APP。技能中下发的字段,最终会以Android Intent
的方式传输给对应的APP,APP进行对应的操作。
在使用该指令时,设备端组装Android Intent
的方式是一致的,请保证你传输的字段取值,是最终APP可以相应的Android Intent
字段取值。
# 指令协议
"directives": [
{
"type": "AppAction.Execute",
"executionId": "xxx",
"actions": [//一次技能返回可以返回多个action(一类,如【用高德地图导航到万达广场】和【用百度地图导航到万达广场】)
{
"token": "xxx",
"data": {
"type": "activity",
"uri": "URI_SAMPLE",
"packageName": "PACKAGE_NAME_SAMPLE",
"categoryName": "CATEGORY_NAME_SAMPLE",
"friendlyName": "FRIENDLY_NAME_SAMPLE",
"className": "CLASS_NAME_SAMPLE",
"actionName": "ACTION_NAME_SAMPLE",
"extras": {
"EXTRA_KEY_SAMPLE_1": "EXTRA_VALUE_SAMPLE_1",
"EXTRA_KEY_SAMPLE_2": "EXTRA_VALUE_SAMPLE_2",
// 其他的 extra
}
}
},
{//第二个action,设备会顺序执行,只要执行成功一个action,就当做这个execute执行成功
"token": "xxx",
"data": {
"type": "activity",
"uri": "URI_SAMPLE",
"packageName": "PACKAGE_NAME_SAMPLE",
"categoryName": "CATEGORY_NAME_SAMPLE",
"friendlyName": "FRIENDLY_NAME_SAMPLE",
"className": "CLASS_NAME_SAMPLE",
"actionName": "ACTION_NAME_SAMPLE",
"extras": {
"EXTRA_KEY_SAMPLE_1": "EXTRA_VALUE_SAMPLE_1",
"EXTRA_KEY_SAMPLE_2": "EXTRA_VALUE_SAMPLE_2",
// 其他的 extra
}
}
}
]
},
]
参数 | 类型 | 说明 | 必有 |
---|---|---|---|
type | String | 这里取值:AppAction.Execute | |
execution_id | String | 代表这一组执行的 id,技能自行指定 | 是 |
actions | List | action 列表,按顺序执行。执行成功一个 action 后,其他的 action 无需执行。 | 是 |
actions.[i].token | String | 代表这个 action 的唯一标识,技能自行指定 | 是 |
actions.[i].data | Object | 执行 app_action 时需要的 data。 | 是 |
actions.[i].data.type | String | 这个action的类型,可取值:activity,service,broadcast。当不出现的时候,默认取值 activity。只有 Android 设备的执行返回才会出现这个字段 | 否 |
actions.[i].data.uri | String | uri 数据,iOS 设备执行必填,Android 设备非必填。 | 否 |
actions.[i].data.packageName | String | 应用包名,,只有 Android 设备的执行返回才会出现这个字段 | 否 |
actions.[i].data.categoryName | String | category 数据,只有 Android 设备的执行返回才会出现这个字段 | 否 |
actions.[i].data.friendlyName | String | 应用显示的名称,一般为中文 | 否 |
actions.[i].data.className | String | class 数据,只有 Android 设备的执行返回才会出现这个字段 | 否 |
actions.[i].data.actionName | String | action 数据,只有 Android 设备的执行返回才会出现这个字段 | 否 |
actions.[i].data.extras | Object | 该 app_action 的附带信息,key和value可技能自定义。 | 否 |