2
我正在測試Android32上的PhoneGap 3.0.0的Tanelih's Bluetooth Plugin的功能。 該插件似乎工作得很好;我可以使用鏈接到JavaScript函數的HTML按鈕打開和關閉藍牙,並在函數運行或不運行時獲取onSuccess/onError回調來顯示消息。PhoneGap 3.0.0 Android上的Tanelih藍牙插件isEnabled onError回調不起作用
但是,當我嘗試使用window.bluetooth.isEnabled(isEnabledSuccess, isEnabledError);
查看是否啓用藍牙時,無論啓用還是禁用藍牙,回調始終爲isEnabledSuccess。
下面是一些我的index.html:
<head>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady()
{
window.bluetooth.isEnabled(isEnabledSuccess, isEnabledError);
}
function isEnabledSuccess(isEnabled)
{
var element = document.getElementById('status');
element.innerHTML = "Enabled";
}
function isEnabledError(isEnabled)
{
var element = document.getElementById('status');
element.innerHTML = "Disabled";
}
</script>
</head>
<body>
<p id="status"></p>
</body>
這裏的一些bluetooth.js的(我沒碰過這個文件):
Bluetooth.prototype.isEnabled = function(onSuccess, onError)
{
exec(onSuccess, onError, "Bluetooth", "isEnabled", []);
}
這裏的一些BluetoothPlugin.java的(我沒有觸及此文件):
/**
* Is Bluetooth on.
*
* @param args Arguments given.
* @param callbackCtx Where to send results.
*/
private void isEnabled(JSONArray args, CallbackContext callbackCtx)
{
try
{
callbackCtx.sendPluginResult(new PluginResult(PluginResult.Status.OK, _bluetooth.isEnabled()));
}
catch(Exception e)
{
this.error(callbackCtx, e.getMessage(), BluetoothError.ERR_UNKNOWN);
}
}
有沒有人有任何想法?