btFindReceiver = plus.android.implements("io.dcloud.android.content.BroadcastReceiver", {
"onReceive": function(context, intent) {
plus.android.importClass(context);
plus.android.importClass(intent);
let action = intent.getAction();
console.log('action',action)
if (BluetoothDevice.ACTION_FOUND == action) { // 找到设备
let device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
let newDevice = {
"name": plus.android.invoke(device, "getName"),
"address": plus.android.invoke(device, "getAddress")
}
console.log('device', device)
options.discoveryDeviceCallback && options.discoveryDeviceCallback(newDevice);
}
if (BluetoothAdapter.ACTION_DISCOVERY_FINISHED == action) { // 搜索完成
cancelDiscovery();
options.discoveryFinishedCallback && options.discoveryFinishedCallback();
}
}
})
如上方法中onReceive方法在使用自定义基座时并没有触发,但是使用默认的标准基座方法就会执行,这是为什么呢?
需要做什么调整吗?
1 个回复
s***@163.com
我遇上同样问题,在搜索蓝牙设备时候,这个事件无法被触发
奇怪的是,不同机型不同结果,同样是android14版本的,有些就正常,有些就异常