javascript - 在 Tizen Wearable 上设置蓝牙监听器

标签 javascript bluetooth tizen tizen-wearable-sdk

我正在使用 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/

相关文章:

Android ble,requestConnectionPriority 不工作

widget - Samsung Gear fit 2 小部件

javascript - jQuery 在 mouseenter 上添加类并在 mouseout 后 500 毫秒删除它

子窗口中的 JavaScript 错误

javascript - Meteor/mongo 获取一个月前创建的记录

javascript - node.js setTimeout() 工作吗?

ios - 在 SWIFT 中断开 BLE 外设

android - 如何在android上构建hidd?

tizen - 操作系统从 Tizen 2.3.2.3 升级到 Tizen 3.0.0.1 后 Gear S3 中的签名错误

java - 在 windows 7 中安装 tizen