更新记录

1.0.0(2025-12-08)

  • 安卓 鸿蒙next usb通信;

平台兼容性

uni-app(4.85)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - - 5.0 × 10
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - - -

uni-app x(4.85)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - 5.0 × 10 -

XL USB Device SDK

一个基于 UTS 的 USB 设备通信接口封装,支持安卓和鸿蒙NEXT,用于获取 USB 设备列表、建立连接、断开连接、发送数据以及接收设备返回数据。

适用于 USB 打印机 / USB 硬件设备通信场景


📦 功能特性

  • 🔍 获取当前可用的 USB 设备列表
  • 🔌 连接 / 断开 USB 设备
  • 📤 向 USB 设备写入数据(字符串 / 字节数组)
  • 📥 监听并接收 USB 设备返回的数据
  • ⚠️ 提供清晰的连接状态回调

📘 类型定义说明

USB 设备信息 XLUsbDevice

export type XLUsbDevice = {
  deviceName: string;
  deviceId: string;
  productName: string;
  productId: string;      // pid
  vendorId: string;       // vid
  manufacturerName: string;
};

连接状态 StateFlag

type StateFlag = 'connected' | 'disconnected' | 'failConnected' | 'PermissionDenied';

回调类型

export type ConnectBack = (msg: StateFlag) => void;
export type DataBack = (datas: number[]) => void;

🧩 API 接口说明

获取 USB 设备列表

getUsbDevices(): XLUsbDevice[];

连接 USB 设备

connectUsb(name: string, callback: ConnectBack): void;

断开 USB 连接

disconnectUsb(): void;

向 USB 设备写入数据

writeData(data: string | number[]): void;

接收 USB 设备数据

onReceiveData(callback: DataBack): void;

🧪 使用示例

const devices = getUsbDevices();

connectUsb(devices[0].deviceName, (state) => {
  if (state === 'connected') {
    writeData('Hello USB');
  }
});

onReceiveData((data) => {
  console.log(data);
});

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率: