我正在使用 Tizen
的可穿戴 SDK 创建表盘,同时我可以使用 blueAdapter = tizen.bluetooth.getDefaultAdapter() 检索蓝牙的电源状态;
和 bluetoothPowered = blueAdapter.powered;
,我宁愿使用蓝牙监听器而不是不断调用 blueAdapter.powered
。
我遇到的问题是,虽然我从 Tizen 的 Bluetooth API
网页直接复制并粘贴了示例代码(虽然我确实更改了适配器的名称,见下文),但我出现以下错误:“undefined”不是一个函数(评估“blueAdapter.setChangeListener(changeListener)”)
。
这是我使用的代码:
var blueAdapter = tizen.bluetooth.getDefaultAdapter();
var changeListener = {
onstatechanged: function(powered) {
console.log ("Power state is changed into: " + powered);
},
onnamechanged: function( name) {
console.log("Name is changed to: " + name);
},
onvisibilitychanged: function(visible) {
console.log("Visibility is changed into: " + visible);
}
};
blueAdapter.setChangeListener(changeListener);
不确定是否有帮助,但我正在使用以下权限
:
http://tizen.org/privilege/bluetooth.admin
http://tizen.org/privilege/bluetooth.gap
如有任何帮助,我们将不胜感激。
最佳答案
虽然现在已经有一段时间了,但您是否尝试过像下面这样更改语法?
function changeListener(handler) {
handler.onstatechanged = function(powered) {
console.log ("Power state is changed into: " + powered);
}
handler.onnamechanged = function(name) {
console.log("Name is changed to: " + name);
}
handler.onvisibilitychanged = function(visible) {
console.log("Visibility is changed into: " + visible);
}
};
这会用一个函数替换您的监听器对象,然后该函数应该在监听器中声明所需的函数。这只是一个想法,我还没有测试过。
关于javascript - 在 Tizen Wearable 上设置蓝牙监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30654930/