HarmonyOS 可穿戴振动器未激活
HarmonyOS wearable vibrator not activating
我正在使用 JS 框架创建 HarmonyOS 可穿戴应用程序,我想使用振动器。手表肯定有振动器,因为我在设置应用程序中使用滚动轮时可以感觉到它。
所以我在 config.json
文件中请求了 system_grant ohos.permission.VIBRATE
权限 here
"module": {
...
"reqPermissions": [
{
"name": "ohos.permission.VIBRATE",
"reason": "Make vibrates"
}
]
...
}
那么像这样使用进口振动器应该很简单
import vibrator from '@system.vibrator';
export default {
// ...
onShow() {
console.log("VIBRATOR");
vibrator.vibrate({
mode : "long",
success: () => console.debug("Vibrator Success"),
fail : (data, code) => console.log("Vibrator handle fail, data = ${data}, code = ${code}"),
complete : () => console.debug("Vibrator Complete")
});
}
// ...
}
我确实获得了 VIBRATOR
登录 HiLog
但没有其他登录在振动器回调中,设备也不振动。
有人知道我做错了什么吗?
编辑:
我注意到 VIBRATOR
日志后有一堆错误日志。我不明白它们是什么意思,所以我把它们贴在这里。
D 03B00/JSApp: app Log: VIBRATOR
E 03900/Ace: [<private> (<private>)] ace Log: [JS Framework] Failed to invoke the event handler of "viewappear" on div (_root):
E 03900/Ace: TypeError: value has no property
E 03900/Ace: [<private> (<private>)] Qjs FireAsyncEvent FAILED !! jsCall: <private>
E 03900/Ace: [<private> (<private>)] [DUMP] <private>
E 03900/Ace: [<private> (<private>)] <private>
JS API文档是基于可穿戴设备编写的。智能设备的标准用法如下:
vibrator.vibrate({
mode: "short"
});
或
vibrator.vibrate();
我正在使用 JS 框架创建 HarmonyOS 可穿戴应用程序,我想使用振动器。手表肯定有振动器,因为我在设置应用程序中使用滚动轮时可以感觉到它。
所以我在 config.json
文件中请求了 system_grant ohos.permission.VIBRATE
权限 here
"module": {
...
"reqPermissions": [
{
"name": "ohos.permission.VIBRATE",
"reason": "Make vibrates"
}
]
...
}
那么像这样使用进口振动器应该很简单
import vibrator from '@system.vibrator';
export default {
// ...
onShow() {
console.log("VIBRATOR");
vibrator.vibrate({
mode : "long",
success: () => console.debug("Vibrator Success"),
fail : (data, code) => console.log("Vibrator handle fail, data = ${data}, code = ${code}"),
complete : () => console.debug("Vibrator Complete")
});
}
// ...
}
我确实获得了 VIBRATOR
登录 HiLog
但没有其他登录在振动器回调中,设备也不振动。
有人知道我做错了什么吗?
编辑:
我注意到 VIBRATOR
日志后有一堆错误日志。我不明白它们是什么意思,所以我把它们贴在这里。
D 03B00/JSApp: app Log: VIBRATOR
E 03900/Ace: [<private> (<private>)] ace Log: [JS Framework] Failed to invoke the event handler of "viewappear" on div (_root):
E 03900/Ace: TypeError: value has no property
E 03900/Ace: [<private> (<private>)] Qjs FireAsyncEvent FAILED !! jsCall: <private>
E 03900/Ace: [<private> (<private>)] [DUMP] <private>
E 03900/Ace: [<private> (<private>)] <private>
JS API文档是基于可穿戴设备编写的。智能设备的标准用法如下:
vibrator.vibrate({
mode: "short"
});
或
vibrator.vibrate();