插件无效

时间:2015-09-04 05:42:07

标签: javascript cordova plugins bluetooth-lowenergy

我已经安装了Rand Dusing的BLE Cordova插件,并按照他的例子来初始化蓝牙,但我无法理解。这是我的index.js

var blePlugin = window.bluetoothle;

function bleInitialize() {
  var paramsObj = {
    request: true,
    statusReceiver: true
  };
  document.getElementById("BTHWStatus").innerHTML = 'Initialze BLE: Checking BT status...';
  blePlugin.initialize(bleInitializeSuccess, bleInitializeError, paramsObj);
  document.getElementById("BTHWStatus").innerHTML = 'Initialze BLE: Complete';
  return false;
}

function bleInitializeSuccess(obj) {
  if (obj.status == "enabled")
    document.getElementById("BTHWStatus").innerHTML = 'BT is turned ON';
  else
    document.getElementById("BTHWStatus").innerHTML = 'BLE:Initialize: Unexpected error';
}

function bleInitializeError(obj) {
  document.getElementById("BTHWStatus").innerHTML = "Initialize Error : " + JSON.stringify(obj);
}

这是index.html

<h3>Bluetooth Test App</h3>
<br>
<div>
  <a id="BTHWStatus">BT is turned OFF</a>
  <br/>
  <br/>
  <span>Enable/Disable Bluetooth :</span>
  <input type="checkbox" id="BTSelect">
  <button id="BTApply">Apply</button>
  <br/>
</div>

有人可以告诉我,index.js文件中是否有任何不正确的内容可能导致该插件无法正常工作?我已使用命令cordova plugin验证插件是否已在命令提示符中正确安装。

回调函数编码是正确的还是我错过了什么?我可以在应用页面上使用blePlugin.initialize功能打印Initialze BLE: Checking BT status...,但之后没有任何内容。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您的应用程序代码是否已执行after the deviceready event?从您的代码中我无法看到它,所以问题可能就是这个。

如果您不等待deviceready事件,则js代码将起作用,但Cordova相关功能将无法使用。