12345678910111213141516171819202122232425262728293031 |
- import 'package:flutter/services.dart';
- class UsbState {
- final EventChannel _eventChannel =
- EventChannel('com.vinno.vitalapp/usb_events');
- void startListening() {
- _eventChannel.receiveBroadcastStream().listen(
- (dynamic event) {
- // 这里我们期望event是一个Map,包含USB设备的信息
- Map<dynamic, dynamic> usbEvent = event as Map<dynamic, dynamic>;
- print('USB Event: $usbEvent');
- String action = usbEvent['action'] ?? 'unknown';
- String name = usbEvent['name'] ?? 'unknown';
- String type = usbEvent['type'] ?? 'unknown';
- if (action == 'attached') {
- print('USB device attached: Name - $name, Type - $type');
- // USB设备已连接,可以根据需要处理
- } else if (action == 'detached') {
- print('USB device detached: Name - $name, Type - $type');
- // USB设备已断开,可以根据需要处理
- }
- },
- onError: (dynamic error) {
- print('USB Event Error: $error');
- },
- );
- }
- }
|