如何解决扫描运行时如何在发现的设备的AndroidJAVA上刷新BLE列表?
我正在尝试列出已发现的BLE设备,但这是我需要等待扫描完成的唯一方法。
if(ble.isReadyForScan()) {
if(!ble.isScanning()) {
dAlert = setDialogSearch();
dAlert.show();
Handler mHandler = new Handler();
ble.scanLeDevice(true);
mHandler.postDelayed(() -> {
dAlert.dismiss();
setListMain();
},ble.getScanPeriod());
}
}
我使用ble.scanLeDevice(bolean)
进行列表,然后使用setListMain()
进行打印:
public void scanLeDevice(boolean enable) {
Handler mHandler = new Handler();
if (enable) {
mScanning = true;
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
mScanning = false;
mBluetoothAdapter.stopLeScan(mLeScanCallback);
}
},SCAN_PERIOD);
if(!FILTER_SERVICE.equals("")) {
UUID[] filter = new UUID[1];
filter [0] = UUID.fromString(FILTER_SERVICE);
mBluetoothAdapter.startLeScan(filter,mLeScanCallback);
}else{
mBluetoothAdapter.startLeScan(mLeScanCallback);
}
} else {
mScanning = false;
mBluetoothAdapter.stopLeScan(mLeScanCallback);
}
}
我正在尝试将此功能更改为线程,但仍无法正常工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。