我们有一个使用BLE连接的设备。
第一次连接成功。
但是当信号丢失时,重新连接不会发生
连接:
ble.connect (deviceAddress, connectSuccess, connectFailed);
如果连接成功,我会向按钮添加一个事件
function connectSuccess (characteristic) {
log ("connectSuccess to" + characteristic.name);
var fieldState = document.getElementById ("fieldState");
fieldState.addEventListener ("click",
function () {readData (uuids1.StateState, "field State", "textField"); });
}
当连接失败时,我每隔10秒询问一次设备
function connectFailed (characteristic) {
log ("connectFailed to" + characteristic.name);
ble.disconnect (deviceAddress);
reconnect = setTimeout (function tryToBack () {
ble.connect (deviceAddress, sc, connectFailed);
log ("Try Connecting !!");
reconnect = setTimeout (tryToBack, 10000);
},
100);
}
function sc (data) {
clearTimeout (reconnect);
log ("Success reconnect to" + data.name);
log ("with address" + deviceAddress);
connectSuccess (data)
}
但是当设备在视线中时,它已连接但没有响应按钮点击。