README
Gizwits Siri Shortcut
由于 Cordova 目前不支持创建多个 Target 的 iOS 项目,添加 Siri Widget 的大概步骤如下:
- 先添加 iOS platform
- 添加所有依赖的 plugin,包括本插件
cordova-gizwits-siri-shortcut - 手动添加 Intents Extension
Target 在 *.xcodeproj 中的排序是不确定的,Cordova 每次都是只拿排在第一的 Target 来操作 (主 App 的 Target 不一定排在第一位),导致 Cordova 操作了其他的 Target,使得项目报错。所以添加 Intents Extension 必需在完成其他操作后再进行。
一旦添加了 Intents Extension,就不能再更新插件或其他使用 Cordova 命令更新项目的操作。若要进行这些操作,请先移除 iOS 项目再进行,操作完后再重新添加 iOS。
支持平台
- iOS
插件添加/移除
# 添加
cordova plugin add cordova-gizwits-siri-shortcut --variable GROUP_ID=group.xxxx
# 移除
cordova plugin rm cordova-gizwits-siri-shortcut
接口使用说明
添加 Siri Shortcut
addSiriShortcut// 参数 // url 手动场景执行命令地址 (已拼接 homeId 及 id) // version Version 接口版本号 // sceneId 场景 id // sceneName 手动场景名称 // suggestedInvocationPhrase 建议的 Siri 命令短语 // icon 图标名称 params = {"url": "", "version": "", "sceneId": "", "sceneName": "场景名称", "suggestedInvocationPhrase": "执行手动场景1", icon: ""}; cordova.plugins.gizSiriShortcut.addSiriShortcut(params, success, error);手动场景执行命令请参考接口说明: http://app-demo1.lease.iotsdk.com/swagger-ui.html#!/2623423478app4525163211602233026223/executeUsingPOST
编辑 Siri Shortcut
editSiriShortcut// 参数 // sceneId 场景 id // UUID Siri shortcut uuid params = {"sceneId": "", "UUID": ""}; cordova.plugins.gizSiriShortcut.editSiriShortcut(params, success, error);Siri Shortcut 是否可用
isSiriShortcutEnabledcordova.plugins.gizSiriShortcut.isSiriShortcutEnabled(func (isEnabled) { // isEnabled Siri Shortcut 是否可用 // true 可用 // false 不可用 }, error);获取 Siri 授权状态
getSiriAuthorizationStatuscordova.plugins.gizSiriShortcut.getSiriAuthorizationStatus(func (status) { // status 授权状态值,请参照状态值表 }, error);请求 Siri 授权
requestSiriAuthorizationStatuscordova.plugins.gizSiriShortcut.requestSiriAuthorizationStatus(func (status) { // status 授权状态值,请参照状态值表 }, error);初始化 App Groups
setupWithGroupId请在 App 启动之后调用该方法初始化 App Groups
groupId = "group.com.gizwits.xb"; cordova.plugins.gizSiriShortcut.setupWithGroupId(groupId, success, error);设置 Token
setTokencordova.plugins.gizSiriShortcut.setToken("your token", success, error);获取 Token
getTokencordova.plugins.gizSiriShortcut.getToken(func (token) { // token }, error);获取 Siri Shortcut
getSiriShortcut// 参数 // sceneId 场景 id sceneId = ""; cordova.plugins.gizSiriShortcut.getSiriShortcut(sceneId, func (sceneInfo) { // sceneInfo 场景 Shortcut 信息 {"sceneId": "", "UUID": ""} }, error);获取所有 Siri Shortcut
getAllSiriShortcutcordova.plugins.gizSiriShortcut.getAllSiriShortcut(func (sceneInfoArray) { // sceneInfoArray 场景 Shortcut 信息列表 [{"sceneId": "", "UUID": ""}] }, error);
状态值表
| 授权状态值 | 描述 |
|---|---|
| 0 | 未授权 Authorization status not determined |
| 1 | 功能不可用 Authorization status restricted |
| 2 | 拒绝授权 Authorization status denied |
| 3 | 已授权 Authorization status authorized |
| 4 | 未知状态 Authorization status unknown |