示例
初始化
// 启动app的时候或者登录的时候设置token给shortcut
import RNGizwitsShortcut from 'react-native-gizwits-shortcut';
RNGizwitsShortcut.setToken(token, () => { });
确认权限
// 在需要用到shortcut的地方检查权限
RNGizwitsShortcut.isSiriShortcutEnabled((err: TError,result: boolean) => {
if (result) {
const result: IPerm = await RNGizwitsShortcut.requestSiriPermission();
if (result === 'granted') {
// 确保系统支持,以及app拥有权限 下一步就可以添加捷径了
}
}
});
添加捷径
const sceneId = '1';
const params = {
url: `https://aep-app.gizwits.com/app/smartHome/homes/${currentHome}/manual_scenes/${sceneId}/execute`, // currentHome 代表当前房间 id 代表
version: '1.0', // 直接写1.0就可以了
icon: 'http://developer.gizwits.com/siteApi/cybertron/users/public/media/%E5%86%B7%E6%9A%96%E7%81%AF_1535366793820.png', // 捷径运行的时候显示的icon,是一个http地址
token: 'token',
sceneName: 'name', // 场景名称
sceneId, // 需要添加到捷径的场景 通过场景接口获得
suggestedInvocationPhrase: '打开卧室的灯', // 添加Shortcut时的建议语
};
RNGizwitsShortcut.addSiriShortcut(params, (error, result) => {
if (error) {
} else {
}
});
唤醒Siri
然后就可以唤醒Siri,读出刚刚设置的文字
例如: "嘿,Siri。执行回家"
Siri就会自动执行设置的场景。