USB模块
数据结构
ESUsbDeviceInfo
USB设备信息
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
deviceName | 设备名称 | string | 是 |
vendorId | 供应商唯一标识符 | number | 是 |
productId | 产品唯一标识符 | number | 是 |
deviceId | 设备唯一标识符 | number | 是 |
deviceProtocol | 设备协议 | number | 是 |
productName | 产品名称 | string | 否 |
serialNumber | 序列号 | string | 否 |
manufacturerName | 生产商名称 | string | 否 |
接口
isUsbDevicePermissionsGranted
该方法判断USB设备是否授权。
完整方法声明:function isUsbDevicePermissionsGranted(vendorId: number, productId: number): Promise<boolean>
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
vendorId | 供应商唯一标识符 | number | 是 |
productId | 产品唯一标识符 | number | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | USB设备是否授权 | Promise<boolean> |
requestUsbDevicePermission
该方法请求授权USB设备。
完整方法声明:function requestUsbDevicePermission(permission: string, vendorId: number, productId: number): Promise<boolean>
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
permission | 权限名称 | string | 是 |
vendorId | 供应商唯一标识符 | number | 是 |
productId | 产品唯一标识符 | number | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | USB设备是否授权 | Promise<boolean> |
getUsbDeviceList
该方法获取USB设备列表。
完整方法声明:function getUsbDeviceList(): Promise<Array<ESUsbDeviceInfo>>
- 参数:
无
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | USB设备列表 | Promise<Array<ESUsbDeviceInfo>> |
getUsbDevice
该方法获取USB设备。
完整方法声明:function getUsbDevice(vendorId: number, productId: number): Promise<ESUsbDeviceInfo>
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
vendorId | 供应商唯一标识符 | number | 是 |
productId | 产品唯一标识符 | number | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | USB设备 | Promise<ESUsbDeviceInfo> |
getUsbDeviceListByArray
该方法获取多个USB设备。
完整方法声明:function getUsbDeviceListByArray(array: Array<Array<number>>): Promise<Array<ESUsbDeviceInfo>>
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
array | vendorId 和productId 二维数组 | Array<Array<number>> | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | USB设备列表 | Promise<Array<ESUsbDeviceInfo>> |
addListener
该方法添加USB设备监听。
完整方法声明:function addListener(listener: ESUsbDeviceListener): void
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
listener | 监听方法 | ESUsbDeviceListener | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | 无 | void |
removeListener
该方法删除USB设备监听。
完整方法声明:function removeListener(listener: ESUsbDeviceListener): void
- 参数:
参数 | 描述 | 类型 | 非空 |
---|---|---|---|
listener | 监听方法 | ESUsbDeviceListener | 是 |
- 返回值:
属性 | 描述 | 类型 | 默认值 |
---|---|---|---|
无 | 无 | void |
基础用法
- 代码示例:
点击查看源码
vue<template> <div class='es-sdk-root-css'> <s-title-view class='es-sdk-content-title-css' :text='this.$options.name' /> <div class='es-sdk-content-divider-css' /> <div class='es-sdk-content-column-css'> <div class='es-sdk-content-row-css'> <s-text-button text='获取Usb设备列表' @onButtonClicked='getUsbDeviceList' /> <s-text-button text='获取Usb设备信息' @onButtonClicked='getUsbDevice' /> <s-text-button text='批量获取Usb设备信息' @onButtonClicked='getUsbDeviceListByArray' /> <s-text-button text='Usb设备是否获取权限' @onButtonClicked='isUsbDevicePermissionsGranted' /> <s-text-button text='请求Usb设备权限' @onButtonClicked='requestUsbDevicePermission' /> </div> <s-text-view :text='usbDeviceText'></s-text-view> </div> </div> </template> <script lang='ts'> import {defineComponent} from '@vue/runtime-core'; import {ref} from 'vue'; import {useESToast, useESUsbDevice} from '@extscreen/es3-core'; export default defineComponent({ name: 'Usb设备模块', setup() { const usb = useESUsbDevice(); const toast = useESToast(); const usbDeviceText = ref(''); const usbDeviceListener = { onUsbDeviceDetached(usbDeviceInfo) { usbDeviceText.value = 'Usb设备拔出:' + JSON.stringify(usbDeviceInfo); }, onUsbDeviceAttached(usbDeviceInfo) { usbDeviceText.value = 'Usb设备插入:' + JSON.stringify(usbDeviceInfo); }, }; function onESCreate(params) { usb.addListener(usbDeviceListener); } function onESDestroy() { usb.removeListener(usbDeviceListener); } //----------------------监听Usb设备插拔------------------------- //----------------------------------------------- function getUsbDeviceList() { usb.getUsbDeviceList().then( (usbDeviceList) => { usbDeviceText.value = JSON.stringify(usbDeviceList); }, error => { usbDeviceText.value = '错误'; }, ); } function getUsbDevice() { usb.getUsbDevice(30021, 10244).then( (usbDevice) => { usbDeviceText.value = JSON.stringify(usbDevice); }, error => { usbDeviceText.value = '错误'; }, ); } function getUsbDeviceListByArray() { usb.getUsbDeviceListByArray( [[30021, 10244], [3034, 51232]], ).then( (usbDeviceList) => { usbDeviceText.value = JSON.stringify(usbDeviceList); }, error => { usbDeviceText.value = '错误'; }, ); } function isUsbDevicePermissionsGranted() { usb.isUsbDevicePermissionsGranted(30021, 10244).then( (hasPermissionsGranted) => { usbDeviceText.value = hasPermissionsGranted ? '已经获取了权限' : '未获取权限'; }, error => { usbDeviceText.value = '错误'; }, ); } function requestUsbDevicePermission() { usb.requestUsbDevicePermission( 'com.nanosic.USB_PERMISSION', 30021, 10244).then( (requestUsbDevicePermission) => { toast.showToast('请求权限:' + requestUsbDevicePermission); }, error => { toast.showToast('请求权限Error!'); }, ); } return { usbDeviceText, onESCreate, onESDestroy, getUsbDeviceList, getUsbDevice, getUsbDeviceListByArray, isUsbDevicePermissionsGranted, requestUsbDevicePermission, }; }, }); </script> <style> </style>