Bluetooth.enable中的错误:TypeError:无法读取未定义的属性“startActivityForResult”

时间:2018-01-28 11:06:23

标签: javascript android bluetooth nativescript android-bluetooth

我正在使用nativescript-bluetooth插件。

代码:

bluetooth.enable().then(function(enabled) {
    setTimeout(function() {
    dialogs.alert({
        title: "Did the user allow enabling Bluetooth by our app?",
        message: enabled ? "Yes" : "No",
        okButtonText: "OK, nice!"
    });
    }, 500);
});

当我的应用程序启动时,我在终端中看到了这个错误:

JS: Error in Bluetooth.enable: TypeError: Cannot read property 'startActivityForResult' of undefined

如何解决?

1 个答案:

答案 0 :(得分:0)

在应用程序完全初始化之前,您拨打的大多数电话是bluetooth.enable()。我遇到了这个问题,为了解决这个问题,我将该函数包装为超时:

setTimeout(() => enableBluetooth(), 1000)

enableBluetooth() {    
  bluetooth.enable().then(function(enabled) {
    setTimeout(function() {
      dialogs.alert({
        title: "Did the user allow enabling Bluetooth by our app?",
          message: enabled ? "Yes" : "No",
          okButtonText: "OK, nice!"
      });
    }, 500);
  }); 
}