搜索插件、代码仓与 APP 分类

插件详情v0.3.23+2

libusb

Dart 的包装器,通过 `dart:ffi` 实现对 https://github.com/libusb/libusb 的支持

macOSWindowsLinux
近 30 天下载
41
喜欢数
28
Pub 分数
125

安装插件

flutter pub add libusb

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个使用 `dart:ffi` 的 Dart 包装器,提供对 libusb 库的访问,可在桌面平台上实现低级别 USB 设备通信。此包允许 Flutter 应用程序直接与 USB 硬件交互,例如读取或写入连接的设备、管理设备描述符以及处理 USB 传输。它非常适合需要直接硬件控制的桌面应用程序开发。该包装器在 macOS、Windows 和 Linux 上具有平台无关性,通过 FFI 利用原生 libusb 功能,以实现性能和兼容性。

适合场景

  • 在桌面应用程序中访问USB设备
  • 读取/写入数据到USB外设
  • 开发硬件控制软件
  • 为自定义USB硬件创建设备驱动程序
  • 与科学或工业USB设备进行接口连接

主要特点

  • 通过 `dart:ffi` 实现原生性能
  • 跨平台支持(macOS、Windows、Linux)
  • 直接USB设备通信
  • 对 USB 端点的底层控制
  • 支持异步 USB 传输

适合对象

  • 桌面应用程序开发者
  • 硬件接口项目
  • 物联网设备管理
  • 具有 USB 连接功能的嵌入式系统
  • 需要实时 USB 数据交换的应用程序

使用建议

  • 需要安装原生 libusb 库
  • 仅限桌面平台
  • 对非技术用户来说,设置较为复杂
  • 错误处理需要了解USB协议
  • 在某些系统上可能需要提升权限

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

libusb

Dart wrapper via dart:ffi for https://github.com/libusb/libusb

Environment

  • Windows(10)
  • macOS
  • Linux(Ubuntu 18.04 LTS)

Usage

Checkout example

Features and bugs

Please file feature requests and bugs at the issue tracker.

Build

Prepare llvm(9+)
  • Windows: winget install -e --id LLVM.LLVM
  • macOS: brew install llvm
  • Linux: sudo apt install libclang-10-dev
Build libusb_xxx.dart
  • Windows/Linux:
pub run ffigen
move lib/libusb.dart lib/libusb64.dart

Refactor timeval to timeval64

  • macOS:
pub run ffigen
mv lib/libusb.dart lib/libusb32.dart

Refactor timeval to timeval32

Contribute

Prepare libusb.h

Download xxx verion from https://github.com/libusb/libusb/releases and extract libusb.h

Prepare libusb-1.0 dynamic library
  • Windows:

Download xxx version from https://github.com/libusb/libusb/releases and extract

copy libusb-1.0.23\MS64\dll\libusb-1.0.dll libusb-1.0\
  • macOS:

Download xxx version from https://homebrew.bintray.com/bottles/libusb-1.0.23.catalina.bottle.tar.gz and extract

cp libusb/1.0.23/lib/libusb-1.0.dylib libusb-1.0/
  • Linux:

Download xxx version from http://old.kali.org/kali/pool/main/libu/libusb-1.0/ and install

cp /lib/x86_64-linux-gnu/libusb-1.0.so.0.xxx libusb-1.0/libusb-1.0.so

所属分类

依赖

依赖清单 1 项

源码仓库

使用此插件的项目

暂无相关数据。