ArkTS 开启蓝牙扫描,可以发现远端设备。HarmonyOS 鸿蒙Next异常问题
ArkTS 开启蓝牙扫描,可以发现远端设备。HarmonyOS 鸿蒙Next异常问题
bluetoothManager.startBluetoothDiscovery
startBluetoothDiscovery(): void
开启蓝牙扫描,可以发现远端设备。
需要权限:ohos.permission.DISCOVER_BLUETOOTH 和 ohos.permission.LOCATION 和 ohos.permission.APPROXIMATELY_LOCATION
系统能力:SystemCapability.Communication.Bluetooth.Core。
- let deviceId;
- function onReceiveEvent(data) {
- deviceId = data;
- }
- try {
- bluetoothManager.on(‘bluetoothDeviceFind’, onReceiveEvent);
- bluetoothManager.startBluetoothDiscovery();
- } catch (err) {
- console.error(“errCode:” + err.code + “,errMessage:” + err.message);
- }
- 以上内容是ArkTS 3.1/4.0 ArkTS API参考代码,执行以上代码异常输出是
- errCode:2900100,errMessage:BussinessError 2900100: trans exception.
- 2900100是什么异常代码
已知的蓝牙服务子系统错误码没有2900100,求解
“官方已经回复,harmony os API9目前还不支持,需要等到API10,目前只支持OpenHarmony”
你好,请问下 OpenHarmony工程 通过配置在harmony os上可以运行么?(这边测试是不行)另外请问一下“官方已经回复”有原文/出处 么?谢谢
官方已经回复,harmony os API9目前还不支持,需要等到API10,目前只支持OpenHarmony
- function onReceiveEvent(data) {
- console.info('BLE scan device find result = '+ JSON.stringify(data));
- }
- try {
- bluetoothManager.BLE.on("BLEDeviceFind", onReceiveEvent);
- bluetoothManager.BLE.startBLEScan(
- [{
- deviceId:"XX:XX:XX:XX:XX:XX",
- name:"test",
- serviceUuid:"00001888-0000-1000-8000-00805f9b34fb"
- }],
- {
- interval: 500,
- dutyMode: bluetoothManager.ScanDuty.SCAN_MODE_LOW_POWER,
- matchMode: bluetoothManager.MatchMode.MATCH_MODE_AGGRESSIVE,
- }
- );
- } catch (err) {
- console.error("errCode:" + err.code + ",errMessage:" + err.message);
- }
-
2900099
错误信息
Operation failed.
错误描述
操作失败。
可能原因
该配置文件在当前设备环境不支持。
处理步骤
请重试该操作。
-
---------------------------------------------------
-
资料零碎东拼西凑,我在想是不是"ohos.permission.MANAGE_BLUETOOTH"权限导致的
-
又要签名,研究HarmonyAppProvision配置文件文件
-
{
"version-name": "2.0.0",
"version-code": 2,
"app-distribution-type": "os_integration",
"uuid": "5027b99e-5f9e-465d-9508-a9e0134ffe18",
"validity": {
"not-before": 1594865258,
"not-after": 1689473258
},
"type": "release",
"bundle-info": {
"developer-id": "OpenHarmony",
"distribution-certificate": "-----BEGIN CERTIFICATE-----\nMIICGjCCAaGgAwIBAgIIShhpn519jNAwCgYIKoZIzj0EAwMwUzELMAkGA1UEBhMC\nQ04xDzANBgNVBAoMBkh1YXdlaTETMBEGA1UECwwKSHVhd2VpIENCRzEeMBwGA1UE\nAwwVSHVhd2VpIENCRyBSb290IENBIEcyMB4XDTIwMDMxNjAzMDQzOVoXDTQ5MDMx\nNjAzMDQzOVowUzELMAkGA1UEBhMCQ04xDzANBgNVBAoMBkh1YXdlaTETMBEGA1UE\nCwwKSHVhd2VpIENCRzEeMBwGA1UEAwwVSHVhd2VpIENCRyBSb290IENBIEcyMHYw\nEAYHKoZIzj0CAQYFK4EEACIDYgAEWidkGnDSOw3/HE2y2GHl+fpWBIa5S+IlnNrs\nGUvwC1I2QWvtqCHWmwFlFK95zKXiM8s9yV3VVXh7ivN8ZJO3SC5N1TCrvB2lpHMB\nwcz4DA0kgHCMm/wDec6kOHx1xvCRo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T\nAQH/BAUwAwEB/zAdBgNVHQ4EFgQUo45a9Vq8cYwqaiVyfkiS4pLcIAAwCgYIKoZI\nzj0EAwMDZwAwZAIwMypeB7P0IbY7c6gpWcClhRznOJFj8uavrNu2PIoz9KIqr3jn\nBlBHJs0myI7ntYpEAjBbm8eDMZY5zq5iMZUC6H7UzYSix4Uy1YlsLVV738PtKP9h\nFTjgDHctXJlC5L7+ZDY=\n-----END CERTIFICATE-----\n",
"bundle-name": "com.example.DevOpsOS",
"apl": "system_core",
"app-feature": "hos_normal_app"
},
"acls": {
"allowed-acls": [
"ohos.permission.MANAGE_BLUETOOTH","ohos.permission.READ_CONTACTS","ohos.permission.WRITE_CONTACTS"
]
},
"permissions": {
"restricted-permissions": []
},
"issuer": "pki_internal"
}
-
两周了就是不知道问题出在那,
有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html
针对ArkTS开启蓝牙扫描在HarmonyOS鸿蒙Next中出现的异常问题,首先确保你的开发环境(如DevEco Studio)和ArkTS库已更新至最新版本,以支持最新的HarmonyOS API。
-
检查权限:确保你的应用在manifest文件中已经正确声明了必要的权限,包括
ohos.permission.DISCOVER_BLUETOOTH
、ohos.permission.LOCATION
和ohos.permission.APPROXIMATELY_LOCATION
。 -
系统能力检查:确认你的应用已经声明了所需的系统能力
SystemCapability.Communication.Bluetooth.Core
。 -
API兼容性:根据官方信息,某些API功能可能在特定版本的HarmonyOS中还未完全支持。检查你的HarmonyOS版本是否支持ArkTS蓝牙扫描的相关功能。如果当前版本不支持,可能需要等待后续的系统更新。
-
代码实现:确保你的蓝牙扫描代码实现正确,包括初始化蓝牙管理器、注册接收事件回调、启动扫描等步骤。可以参考官方文档或示例代码进行比对。
-
调试与日志:使用开发者工具查看详细的错误日志,这有助于定位问题。检查是否有其他系统错误或异常信息影响了蓝牙扫描功能的正常运行。
如果以上步骤都无法解决问题,建议查看HarmonyOS的官方文档或社区论坛,看看是否有其他开发者遇到并解决了类似的问题。如果问题依旧没法解决,请联系官网客服获取进一步的帮助,官网地址是:https://www.itying.com/category-93-b0.html。