HarmonyOS 鸿蒙Next USB插拔公共事件没有收到

HarmonyOS 鸿蒙Next USB插拔公共事件没有收到

你好,我使用以下代码在Ability中订阅和反订阅了USB的相关事件,但是插拔USB却没有收到消息?

public void onStart(Intent intent) {
    super.onStart(intent);
    registerCommonEvent();
} 
@Override
protected void onStop() {
    super.onStop();
    unRegisterCommonEvent();
}
private void registerCommonEvent() {
    MatchingSkills skills = new MatchingSkills();
    skills.addEvent(CommonEventSupport.COMMON_EVENT_USB_ACCESSORY_ATTACHED);
    skills.addEvent(CommonEventSupport.COMMON_EVENT_USB_ACCESSORY_DETACHED);
    skills.addEvent(CommonEventSupport.COMMON_EVENT_USB_DEVICE_ATTACHED);
    skills.addEvent(CommonEventSupport.COMMON_EVENT_USB_DEVICE_DETACHED);
    CommonEventSubscribeInfo subscribeInfo = new CommonEventSubscribeInfo(skills);
    subscriber = new CommonEventSubscriber(subscribeInfo) {
        @Override
        public void onReceiveEvent(CommonEventData commonEventData) {
            String data = commonEventData.getData();
            LogUtil.d(TAG, "onReceiveEvent#data:" + data);
            MyToast.show("onReceiveEvent#data:" + data);
        }
    };
    try {
        CommonEventManager.subscribeCommonEvent(subscriber);
    } catch (RemoteException e) {
        e.printStackTrace();
    }
}
private void unRegisterCommonEvent() {
    try {
        CommonEventManager.unsubscribeCommonEvent(subscriber);
    } catch (RemoteException e) {
        e.printStackTrace();
    }
}

开发环境:

  • DevEcoStudio 3.0 beta1
  • HarmonyOS 2.0.0

更多关于HarmonyOS 鸿蒙Next USB插拔公共事件没有收到的实战教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

参考如下代码,log有时不及时,可以debug

更多关于HarmonyOS 鸿蒙Next USB插拔公共事件没有收到的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


COMMON_EVENT_USB_ACCESSORY_ATTACHED COMMON_EVENT_USB_ACCESSORY_DETACHED COMMON_EVENT_USB_DEVICE_ATTACHED COMMON_EVENT_USB_DEVICE_DETACHED 这4个公共通知一个都没有来,
debug没有走么.

usb拔掉了,debug不了,只能通过日志看,

欢迎开发小伙伴们进来帮帮楼主

针对“HarmonyOS 鸿蒙Next USB插拔公共事件没有收到”的问题,可能的原因及解决方案如下:

首先,确保你的应用程序已正确注册并监听USB插拔事件。在HarmonyOS中,这通常涉及到使用系统提供的API来订阅相关事件。检查你的代码,确保已经实现了事件监听器,并且该监听器已经成功注册到系统。

其次,检查USB权限设置。在HarmonyOS中,访问USB设备可能需要特定的权限。确保你的应用已经声明了这些权限,并且在运行时已经获得了用户的授权。

此外,考虑是否有其他应用或服务正在干扰USB事件的接收。有时候,系统级的应用或后台服务可能会占用USB资源,导致其他应用无法接收到插拔事件。可以尝试在安全模式下运行你的应用,看是否能够正常接收到事件。

最后,检查系统的USB设置和硬件连接。确保USB接口没有物理损坏,且系统USB设置没有禁用相关功能。

如果以上步骤都无法解决问题,可能是由于系统bug或特定硬件问题导致的。此时,建议联系设备制造商或访问HarmonyOS官方论坛寻求更专业的帮助。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。

回到顶部