浮生半梦
浮生半梦
  • 发布:2026-04-06 11:02
  • 更新:2026-04-06 11:02
  • 阅读:11

使用nativejs监听USB设备插拔

分类:uni-app

1.配置权限

<uses-feature android:name="android.hardware.usb.host"/>  
<uses-permission android:name="android.permission.USB_PERMISSION"/>

2.注册广播

const main = plus.android.runtimeMainActivity()  
const IntentFilter = plus.android.importClass('android.content.IntentFilter')  

/ 创建广播过滤器  
const filter = new IntentFilter()  
// filter.addAction(action)  
filter.addAction('android.hardware.usb.action.USB_DEVICE_ATTACHED')  
filter.addAction('android.hardware.usb.action.USB_DEVICE_DETACHED')  

const receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', {  
    onReceive: function(context, intent) {  
        // console.log("USB广播触发了!!!")  
        // console.log("完整intent:", intent.toString())  
        const actionType = intent.toString().match(/act=([^\s]+)/)[1]  
        console.log(actionType)  
        if (actionType === 'android.hardware.usb.action.USB_DEVICE_ATTACHED') {  

        } else if (actionType === 'android.hardware.usb.action.USB_DEVICE_DETACHED') {  

        }  

    }  
})  

// 注册广播  
main.registerReceiver(receiver, filter)
0 关注 分享

要回复文章请先登录注册