HarmonyOS鸿蒙Next SDK USB和串口开发时,调用API:usbCore.connectDevice(device)函数发生异常!
HarmonyOS鸿蒙Next SDK USB和串口开发时,调用API:usbCore.connectDevice(device)函数发生异常! 一:设备调试环境:
- 设备名称:Mate 30 Pro 型号 LIO-AL00 HarmonyOS 版本 2.0.0 Developer Beta3
- 设备名称:Mate 30 5G 型号 TAS-AN00 HarmonyOS 版本 2.0.0 Developer Beta3
- 设备名称:P40 30 Pro 型号 ES-AN00 HarmonyOS 版本 2.0.0 Developer Beta3
二,错误截图
第一排截图不全:文字补充
java.lang.UnsatisfiedLinkError: No implementation found for boolean ohos.usb.USBDevicePipeAdapter.localOpenByInt(java.lang.String, int) (tried Java_ohos_usb_USBDevicePipeAdapter_localOpenByInt and Java_ohos_usb_USBDevicePipeAdapter_localOpenByInt__Ljava_lang_String_2I)
三:调试过程
- 注册事件监听
MatchingSkills matchingSkills = new MatchingSkills();
matchingSkills.addEvent(CommonEventSupport.COMMON_EVENT_USB_ACCESSORY_ATTACHED);
matchingSkills.addEvent(CommonEventSupport.COMMON_EVENT_USB_ACCESSORY_DETACHED);
matchingSkills.addEvent(CommonEventSupport.COMMON_EVENT_USB_DEVICE_ATTACHED);
matchingSkills.addEvent(CommonEventSupport.COMMON_EVENT_USB_DEVICE_DETACHED);
matchingSkills.addEvent(ACTION_USB_PERMISSION);
省略部分代码…
- 收到USB设备插拔,查找设备
public void onReceiveEvent(CommonEventData commonEventData) {
Intent intent = commonEventData.getIntent();
String action = intent.getAction();
if (action.equals(CommonEventSupport.COMMON_EVENT_USB_DEVICE_ATTACHED)) {
findSerialPortDevice();
} else if (action.equals(CommonEventSupport.COMMON_EVENT_USB_DEVICE_DETACHED)) {
} else if (action.equals(ACTION_USB_PERMISSION)) {
boolean hasRight = usbCore.hasRight(device); // 打印的值 true
USBDevicePipe connection = usbCore.connectDevice(device);
}
}
- 获取到设备 申请权限
boolean hasRight = usbCore.hasRight(device);
if (!hasRight) {
usbCore.requestRight(device, ACTION_USB_PERMISSION);
}
- 收到权限通知,链接设备;出现异常
boolean hasRight = usbCore.hasRight(device); // 打印的值 true
USBDevicePipe connection = usbCore.connectDevice(device);
更多关于HarmonyOS鸿蒙Next SDK USB和串口开发时,调用API:usbCore.connectDevice(device)函数发生异常!的实战教程也可以访问 https://www.itying.com/category-93-b0.html
请问楼主问题解决了吗?我也在做一个华为手机串口通信的app,发现网上根本找不到相关信息,无从下手呀。难道又要靠android解决吗?
更多关于HarmonyOS鸿蒙Next SDK USB和串口开发时,调用API:usbCore.connectDevice(device)函数发生异常!的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
目前是不支持。
现在支持了吗? api8 支持了吗?ets 现在支持USB外设设备开发吗?
同问,请问你功能实现了吗?
同问串口和USB接口开发
安装ch430的APK 根本就打不开设备。无法实现USBOTG串口通信。买了3个华为平板现在当摆设了。
有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html
同问串口和USB接口开发
同问 串口开发者,
找HarmonyOS工作还需要会Flutter技术的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17
实现了吗,
楼主你好,此接口暂时还不支持,在未来版本中会开放,请关注官方消息
开发者您好,这个问题已经反馈给研发,请您耐心等待一下。
开发者你好,收到你的反馈,我们会尽快转发相关技术验证,请耐心等待。
在HarmonyOS鸿蒙Next SDK中,调用usbCore.connectDevice(device)
函数时发生异常,可能原因包括:
- 设备未正确初始化或未授权;
- USB权限未在
config.json
中正确配置; - 设备描述符不匹配或设备未连接。
建议检查设备状态、权限配置,并确保设备与SDK兼容。调试时可使用日志工具捕获详细错误信息,进一步定位问题。