HarmonyOS 蓝牙扫描报错 [napi_bluetooth_access.cpp(EnableBluetooth:67)]bluetoothManager napi assert failed.
蓝牙扫描报错:
[napi_bluetooth_access.cpp(EnableBluetooth:67)]bluetoothManager napi assert failed.
- 1.
import { access, ble } from '@kit.ConnectivityKit';
import { AsyncCallback, BusinessError } from '@kit.BasicServicesKit';
import { abilityAccessCtrl } from '@kit.AbilityKit';
import { hilog } from '@kit.PerformanceAnalysisKit';
export class LST_BLESDK {
private static instance: LST_BLESDK;
static sharedBLESDK(): LST_BLESDK {
if (!LST_BLESDK.instance) {
LST_BLESDK.instance = new LST_BLESDK();
}
return LST_BLESDK.instance;
}
onReceiveEvent(data: Array<ble.ScanResult>) {
console.info('BLE scan device find result = ' + JSON.stringify(data));
}
requestPermission = async () => {
let permissionRequestResult = await abilityAccessCtrl.createAtManager().requestPermissionsFromUser(getContext(this),
[
'ohos.permission.USE_BLUETOOTH'
]);
// 如果权限列表中有-1,说明用户拒绝了授权
if (permissionRequestResult.authResults[0] === 0) {
hilog.info(0x0000, 'testTag', '%{public}s', 'request permission success');
}
}
async connectDevice() {
await this.requestPermission()
this.enableBluetooth()
try {
ble.on("BLEDeviceFind", this.onReceiveEvent);
let scanOptions: ble.ScanOptions = {
interval: 500,
dutyMode: ble.ScanDuty.SCAN_MODE_LOW_POWER,
matchMode: ble.MatchMode.MATCH_MODE_AGGRESSIVE
}
ble.startBLEScan(null, scanOptions);
} catch (err) {
console.error('errCode: ' + (err as BusinessError).code + ', errMessage: ' + (err as BusinessError).message);
}
}
enableBluetooth() {
access.enableBluetooth();
access.on('stateChange', (data) => {
let btStateMessage = '';
switch (data) {
case 0:
btStateMessage += 'STATE_OFF';
break;
case 1:
btStateMessage += 'STATE_TURNING_ON';
break;
case 2:
btStateMessage += 'STATE_ON';
break;
case 3:
btStateMessage += 'STATE_TURNING_OFF';
break;
case 4:
btStateMessage += 'STATE_BLE_TURNING_ON';
break;
case 5:
btStateMessage += 'STATE_BLE_ON';
break;
case 6:
btStateMessage += 'STATE_BLE_TURNING_OFF';
break;
default:
btStateMessage += 'unknown status';
break;
}
if (btStateMessage == 'STATE_ON') {
access.off('stateChange');
}
console.info('bluetooth statues: ' + btStateMessage);
})
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
- 57.
- 58.
- 59.
- 60.
- 61.
- 62.
- 63.
- 64.
- 65.
- 66.
- 67.
- 68.
- 69.
- 70.
- 71.
- 72.
- 73.
- 74.
- 75.
- 76.
- 77.
- 78.
- 79.
- 80.
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS 调用蓝牙接口access.enableBluetooth()报错 2900099, errMessage: BussinessError 2900099: Operation failed
1144浏览 • 1回复 待解决
staticLibrary har模块,怎么断点调试napi cpp代码
1584浏览 • 1回复 待解决
USE_BLUETOOTH和ACCESS_BLUETOOTH的区别是什么
1418浏览 • 1回复 待解决
编译报错:hvigor ERROR: Error, Schema validate failed.
4329浏览 • 1回复 待解决
HarmonyOS 调用access.enableBluetooth()申请打开蓝牙,用户点击拒绝,如何捕获用户操作状态?
918浏览 • 1回复 待解决
ERROR: Schema validate failed.
1686浏览 • 1回复 待解决
HarmonyOS 在napi_init.cpp中调用C代码怎么接收返回的参数
1285浏览 • 1回复 待解决
Error: Install eTS 3.1.0.0 failed.
4856浏览 • 1回复 待解决
error: install failed due to grant request permissions failed.
5568浏览 • 1回复 待解决
HarmonyOS 调用蓝牙enableBluetooth api 报2900099错误
1640浏览 • 1回复 待解决
HarmonyOS cpp下有什么方法判断当前的napi_env是js主线程的env
717浏览 • 1回复 待解决
HarmonyOS Napi的问题
725浏览 • 1回复 待解决
NAPI 的 napi_throw_error 不会导致应用崩溃
1973浏览 • 1回复 待解决
HarmonyOS 连接蓝牙一直报错:BussinessError 2900099: Operation failed
1251浏览 • 1回复 待解决
HarmonyOS napi_call_threadsafe_function中napi_tsfn_nonblocking和napi_tsfn_blocking有什么区别
996浏览 • 1回复 待解决
HarmonyOS NAPI开发相关问题
1216浏览 • 1回复 待解决
OpenHarmony 9 napi找不到native_node_api,引入头文件报错'napi/native_node_api.h' file not found
3997浏览 • 1回复 待解决
HarmonyOS NAPI接口实现
848浏览 • 1回复 待解决
HarmonyOS Napi Arraybuffer无法创建
779浏览 • 1回复 待解决
HarmonyOS napi共享内存指导
747浏览 • 1回复 待解决
Execution failed for task ':entry:signDebugShell'. > Sign shell failed. For details, see the log.
3104浏览 • 1回复 待解决
HarmonyOS 蓝牙取消订阅扫描,仍然能收到扫描结果回调
760浏览 • 1回复 待解决
NAPI 通过 napi_wrap 创建的对象似乎没有被销毁
2817浏览 • 1回复 待解决
NAPI开发问题
809浏览 • 1回复 待解决
请参考:
蓝牙协议sdk暂不支持,protobuf协议已支持。protobuf:https://gitee.com/openharmony-tpc/protobuf
获取server的services信息,测试没问题。可以参考: