我一直试图为PhoneGap工作获得一个蓝牙插件,但我似乎无法弄清楚我哪里出错了。首先,我的测试设备是Galaxy S3(GT-19305T),应用程序是使用PhoneGap CLI构建的。
我尝试了一个似乎没有做任何事情的例子。
然后我做了基本的,尝试使用PhoneGap给出的示例插件。我可以很容易地完成所有这些工作。在我的示例中,我使用的是基本设备信息插件。
以下是一些示例代码:
使用Javascript:
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
function onDeviceReady() {
var element = document.getElementById('deviceProperties');
element.innerHTML = 'Device Model: ' + device.model + '<br />' +
'Device Cordova: ' + device.cordova + '<br />' +
'Device Platform: ' + device.platform + '<br />' +
'Device UUID: ' + device.uuid + '<br />' +
'Device Version: ' + device.version + '<br />';
var btstatus = document.getElementById('status');
btstatus.innerHTML = "Getting bluetooth information";
window.bluetooth.isEnabled(isEnabledSuccess, isEnabledError);
}
function checkBluetoothStatus() {
var btstatus = document.getElementById('status');
btstatus.innerHTML = "Checking bluetooth information";
window.bluetooth.isEnabled(isEnabledSuccess, isEnabledError);
}
function isEnabledSuccess(isEnabled){
var btstatus = document.getElementById('status');
if(isEnabled){
btstatus.innerHTML = "Enabled";
}else{
btstatus.innerHTML = "Disabled";
}
}
function isEnabledError(error){
var btstatus = document.getElementById('status');
btstatus.innerHTML = "Cannot determine Bluetooth status: " + error.message;
}
function enableBluetooth(){
var btstatus = document.getElementById('status');
btstatus.innerHTML = "Attempting to turn bluetooth on";
window.bluetooth.enable(bluetoothTestSucces, bluetoothTestFail);
}
</script>
HTML
<body>
<p id="deviceProperties">Loading device properties...</p>
<br />
<button onclick="enableBluetooth();">Enable Bluetooth</button>
<br />
<button onclick="checkBluetoothStatus();">Check Bluetooth Status</button>
<br />
<p id="status">Loading bluetooth information...</p>
</body>
所以基本上我试图让插件返回当前的蓝牙连接信息,或者点击“启用蓝牙”按钮启用蓝牙。
遗憾的是到目前为止还没有任何工作,正如我之前所说,我不确定我哪里出错了。
我尝试过手动应用它并使用CLI。
答案 0 :(得分:12)
我最近尝试过相同的示例,并且能够让它正常运行。然而,主要区别在于我使用了Cordova CLI 。
注意:您需要安装:Apache ANT,JAVA,Android SDK,GIT命令行工具。前三个也需要在您的环境路径中正确设置。
这些是我执行的步骤:
npm install -g cordova
npm install -g coffee-script
cd C:\
cordova create bluetooth com.example.bluetooth bluetooth
cd bluetooth
cordova platform add android
cordova plugin add https://github.com/tanelih/phonegap-bluetooth-plugin.git
main.coffee
main.js
隐藏到coffee --compile main.coffee
<script src="cordova.js">
代替<script src="phonegap.js">
cordova build android
答案 1 :(得分:0)
也许this文章有帮助吗?这是与其他特定的蓝牙连接然后你的问题,但也许它可以帮助。我过去使用它,它与PhoneGap 3.0一起使用,唯一的缺点是黑莓不再兼容。