12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- import 'package:flutter/material.dart';
- import 'package:flutter/services.dart';
- import 'package:get/get.dart';
- import 'package:vitalapp/architecture/utils/confirm_box.dart';
- import 'package:vitalapp/components/alert_dialog.dart';
- class UsbState {
- final EventChannel _eventChannel =
- EventChannel('com.vinno.vitalapp/usb_events');
- void startListening() {
- _eventChannel.receiveBroadcastStream().listen(
- (dynamic event) {
-
- 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');
- alertReboot();
-
- } else if (action == 'detached') {
- print('USB device detached: Name - $name, Type - $type');
- alertReboot();
-
- }
- },
- onError: (dynamic error) {
- print('USB Event Error: $error');
- },
- );
- }
- void alertReboot() {
- ConfirmBox.showMultiLines(
- contents: ["检测到 USB 硬件发生变化", "(为保证程序正常运行,建议重启设备)"],
- width: 500,
- showCancel: false,
- );
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- }
- }
|