|
1 jaar geleden | |
---|---|---|
.. | ||
utssdk | 1 jaar geleden | |
changelog.md | 1 jaar geleden | |
encrypt | 1 jaar geleden | |
package.json | 1 jaar geleden | |
readme.md | 1 jaar geleden |
重新自定义基座运行
import {
UTSUsbManager,
} from "@/uni_modules/wrs-uts-usbmanager";
监听USB设备的插拔
// 注册USB插拔监听
UTSUsbManager.registerReceiver(this.action, (resp) => {
let action = resp.action;
switch (action) {
// USB授权结果
case this.action: {
let granted = resp.granted
let action = resp.action
let device = resp.device
this.showMsg("有USB设备授权结果:" + JSON.stringify(resp));
if (granted) {
this.showMsg("有USB设备授权成功");
} else {
this.showMsg("有USB设备授权失败");
}
}
break;
// 监测到有USB拔出
case "android.hardware.usb.action.USB_DEVICE_DETACHED": {
this.showMsg("有USB设备拔出:" + JSON.stringify(resp));
}
break;
// 检测到有USB插入
case "android.hardware.usb.action.USB_DEVICE_ATTACHED": {
// USB插入时,有些设备会监听到USB插入-USB设备拔出-USB设备插入这么个过程,可能是系统或USB设备的bug
this.showMsg("有USB设备插入:" + JSON.stringify(resp));
}
break;
default:
break;
}
})
取消监听USB设备的插拔
UTSUsbManager.unregisterReceiver()
获取当前连接的所有USB设备
UTSUsbManager.getDeviceList((resp) => {
this.showMsg(JSON.stringify(resp))
// {"devices":[{"deviceName":"/dev/bus/usb/001/017","interfaceCount":2,"interfaces":[{"id":0,"name":"Espressif CDC Device","interfaceProtocol":0,"interfaceClass":2},{"id":1,"interfaceProtocol":0,"interfaceClass":10}],"deviceId":1017,"deviceProtocol":0}]}
});
请求某个USB设备权限
权限结果在registerReceiver里回调
let device = devices[index];
let deviceId = device.deviceId;
let requestCode = this.requestCode;
let action = this.action;
let flags = 0;
UTSUsbManager.requestPermission(deviceId, requestCode, action, flags);