Buscar pacotes, repositórios e categorias de apps

Detalhes do pacotev0.3.23+2

libusb

Wrapper do Dart via `dart:ffi` para https://github.com/libusb/libusb

macOSWindowsLinux
Downloads em 30 dias
41
Curtidas
28
Pontos Pub
125

Instalar pacote

flutter pub add libusb

Visão geral do pacote

Orientação gerada a partir de informações públicas. Apenas para referência.

Um wrapper Dart usando `dart:ffi` que fornece acesso à biblioteca libusb, permitindo comunicação de baixo nível com dispositivos USB em plataformas desktop. Este pacote permite que aplicativos Flutter interajam diretamente com hardware USB, como ler ou escrever em dispositivos conectados, gerenciar descritores de dispositivo e lidar com transferências USB. É ideal para desenvolvedores que criam aplicativos desktop que exigem controle direto sobre hardware. O wrapper é independente de plataforma entre macOS, Windows e Linux, aproveitando a funcionalidade nativa do libusb por meio do FFI para desempenho e compatibilidade.

Casos de uso

  • Acessando dispositivos USB em aplicativos de desktop
  • Lendo/gravando dados em periféricos USB
  • Desenvolvendo software de controle de hardware
  • Criando drivers de dispositivo para hardware USB personalizado
  • Interfacing com dispositivos USB científicos ou industriais

Principais recursos

  • Desempenho nativo por meio de `dart:ffi`
  • Suporte multiplataforma (macOS, Windows, Linux)
  • Comunicação direta com dispositivo USB
  • Controle de baixo nível sobre pontos finais USB
  • Suporta transferências assíncronas de USB

Indicado para

  • Desenvolvedores de aplicativos para desktop
  • Projetos de interface de hardware
  • Gerenciamento de dispositivos IoT
  • Sistemas embarcados com conectividade USB
  • Aplicações que exigem troca de dados em tempo real via USB

Considerações

  • Requer bibliotecas nativas libusb instaladas
  • Limitado a plataformas de desktop
  • Configuração complexa para usuários não técnicos
  • O tratamento de erros exige conhecimento sobre protocolos USB
  • Pode ser necessário permissões elevadas em alguns sistemas

README original

Snapshot do README original do repositório-fonte vinculado. Consulte o repositório para o conteúdo mais recente.

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

Categorias

Dependências

Lista de dependências 1 itens

Repositório-fonte

Projetos que usam este pacote

Ainda não há dados.