2023-08-02 09:22:39 +08:00

55 lines
1.5 KiB
Dart

import 'dart:async';
import 'package:flutter_reactive_ble/flutter_reactive_ble.dart';
import 'package:get/get.dart';
import 'package:star_lock/tools/baseGetXController.dart';
import '../../../tools/reactiveBlueTool/getx_ble.dart';
import 'nearbyLock_state.dart';
class NearbyLockLogic extends BaseGetXController{
// StreamSubscription<DiscoveredDevice>? _streamSubscription;
// StreamSubscription<ConnectionStateUpdate>? _connectionStreamSubscription;
// final flutterReactiveBle = FlutterReactiveBle();
// List<DiscoveredDevice> deviceList = [];
final NearbyLockState state = NearbyLockState();
final logicGetxBle = Get.put(GetxBle());
final StreamController<BleScannerState> _stateStreamController = StreamController();
late StreamSubscription<BleScannerState> _streamSubscription;
void _initScheduleSubscription() {
_streamSubscription= _stateStreamController.stream.listen((BleScannerState) {
print("页面B接收到数据 $BleScannerState");
});
}
@override
void onReady() {
// TODO: implement onReady
super.onReady();
_initScheduleSubscription();
}
@override
void onInit() {
// TODO: implement onInit
super.onInit();
logicGetxBle.scanner.startScan((List<DiscoveredDevice> devices){
// print("zzzzzzzzz:$devices");
// print("ccccccccc:${state.devices}");
bool isHave = state.devices.any((element) => element.id == devices[0].id);
if (isHave == false){
state.devices.addAll(devices);
}
});
}
}