From 1aa818402bfb70731f37990015a6c0cefcc5a86d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AD=8F=E5=B0=91=E9=98=B3?= <786612630@qq.com> Date: Tue, 30 Jul 2024 20:00:06 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E5=A4=8D=E5=AE=89=E5=8D=93?= =?UTF-8?q?=E4=BD=8E=E7=89=88=E6=9C=AC=E6=89=8B=E6=9C=BA=E6=89=AB=E6=8F=8F?= =?UTF-8?q?=E8=93=9D=E7=89=99=E6=85=A2=E3=80=81=E5=BC=80=E9=94=81=E6=85=A2?= =?UTF-8?q?=E7=9A=84=E6=83=85=E5=86=B5=202=E3=80=81=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E9=81=A5=E6=8E=A7=E3=80=81=E6=8E=8C=E9=9D=99=E8=84=89=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/.DS_Store | Bin 8196 -> 8196 bytes ios/Podfile.lock | 24 ++++---- lib/blue/blue_manage.dart | 11 ++-- .../card/addICCard/addICCard_page.dart | 2 +- .../uploadElectricQuantity_page.dart | 13 +++-- .../burglarAlarm/burglarAlarm_page.dart | 11 +++- .../palm/addPalm/addPalm_logic.dart | 4 +- .../lockDetail/palm/addPalm/addPalm_page.dart | 55 +++++++++++++++++- .../palm/palmDetail/palmDetail_page.dart | 4 +- .../addRemoteControl_logic.dart | 2 +- .../minePersonInfoEditName_state.dart | 14 ++--- 11 files changed, 102 insertions(+), 38 deletions(-) mode change 100755 => 100644 ios/Podfile.lock diff --git a/ios/.DS_Store b/ios/.DS_Store index bc9ad5a583ae69f768c560174625c50d696a5095..0b9174f8ea3c47156070ef923d4c9e375972c0c6 100755 GIT binary patch delta 126 zcmZp1XmOa}&nUVvU^hRb=wu#&_|1z2Iv5%6PSz1J;8^qE()JvUV~#+M+T<=FE;fk3 zq6oxd0OokkWR0cgDna_~SknNe1pPZDF zpTxkxAi%)DD7!gEU^*k??a2*-Dw8FIcsQiztxPXvKjsJ)2tXI;5b9!baGD$-tTowA zn2S9|J~u<@&(X>L!lp=UP5y!m!{Frn+ybB_Ku|FGu<)wQ>tw>1CpPeGW|#QO4gk`S BGui+E diff --git a/ios/Podfile.lock b/ios/Podfile.lock old mode 100755 new mode 100644 index 1b0b0834..5439a020 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -116,13 +116,13 @@ PODS: - image_picker_ios (0.0.1): - Flutter - ios-voice-processor (1.1.0) - - JCore (4.4.0) - - JPush (5.2.0): + - JCore (4.6.2) + - JPush (5.3.0): - JCore (>= 2.0.0) - jpush_flutter (0.0.2): - Flutter - - JCore (= 4.4.0) - - JPush (= 5.2.0) + - JCore (>= 4.6.2) + - JPush (= 5.3.0) - just_audio (0.0.1): - Flutter - network_info_plus (0.0.1): @@ -323,7 +323,7 @@ SPEC CHECKSUMS: audioplayers_darwin: 877d9a4d06331c5c374595e46e16453ac7eafa40 auto_orientation: 102ed811a5938d52c86520ddd7ecd3a126b5d39d Bugly: 217ac2ce5f0f2626d43dbaa4f70764c953a26a31 - camera_avfoundation: 759172d1a77ae7be0de08fc104cfb79738b8a59e + camera_avfoundation: dd002b0330f4981e1bbcb46ae9b62829237459a4 connectivity_plus: bf0076dd84a130856aa636df1c71ccaff908fa1d device_info_plus: e5c5da33f982a436e103237c0c85f9031142abed DKImagePickerController: 0a24ebfe7b48beeb74c27531540aaa2cc1dac6cf @@ -337,16 +337,16 @@ SPEC CHECKSUMS: flutter_native_contact_picker: bd430ba0fbf82768bb50c2c52a69a65759a8f907 flutter_pcm_sound: de0572ca4f99091cc2abfcc31601b8a4ddd33c0e flutter_voice_processor: 2b89b93d69b02227ae3fd58589ee0bcfa3ca2a82 - fluttertoast: 9f2f8e81bb5ce18facb9748d7855bf5a756fe3db + fluttertoast: e9a18c7be5413da53898f660530c56f35edfba9c fluwx: c18fd6c16b03a2187cd07d6e48e32a7801962849 google_maps_flutter_ios: f135b968a67c05679e0a53538e900b5c174b0d99 GoogleMaps: 20d7b12be49a14287f797e88e0e31bc4156aaeb4 image_gallery_saver: cb43cc43141711190510e92c460eb1655cd343cb - image_picker_ios: b545a5f16c0fa88e3ecbbce3ed4de45567a8ec18 + image_picker_ios: c560581cceedb403a6ff17f2f816d7fea1421fc1 ios-voice-processor: 8e32d7f980a06d392d128ef1cd19cf6ddcaca3c1 - JCore: 05f0f3489672ea3fa55338bae4866224bc092b1f - JPush: 76668b765fcfd7c15f86b05ca0e5cdc01945ce23 - jpush_flutter: 1f436f1a02db5c5ef9e9b42378f557096ccd328b + JCore: 024c73b04e110b496e93d8c127ea9cd1ed934e4c + JPush: b71f497a3c1b825c7843fd97f290b05d5cd75f2e + jpush_flutter: c87be254790933c0363684169ef9d3d279a5adc5 just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa network_info_plus: 6d0c3eb8367b8164fa3fb0c19875e3f59d49697f open_filex: 6e26e659846ec990262224a12ef1c528bb4edbe4 @@ -362,9 +362,9 @@ SPEC CHECKSUMS: Toast: 1f5ea13423a1e6674c4abdac5be53587ae481c4e url_launcher_ios: 5334b05cef931de560670eeae103fd3e431ac3fe video_player_avfoundation: 7c6c11d8470e1675df7397027218274b6d2360b3 - webview_flutter_wkwebview: be0f0d33777f1bfd0c9fdcb594786704dbf65f36 + webview_flutter_wkwebview: 2a23822e9039b7b1bc52e5add778e5d89ad488d1 WechatOpenSDK-XCFramework: 36fb2bea0754266c17184adf4963d7e6ff98b69f PODFILE CHECKSUM: 317f9473a5705c6fe4d79d95e81676f248048fdc -COCOAPODS: 1.14.3 +COCOAPODS: 1.15.2 diff --git a/lib/blue/blue_manage.dart b/lib/blue/blue_manage.dart index 6a26d88e..bfb0cbd0 100755 --- a/lib/blue/blue_manage.dart +++ b/lib/blue/blue_manage.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'dart:io'; +import 'package:flutter_blue_plus/flutter_blue_plus.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:get/get.dart'; import 'package:star_lock/app_settings/app_settings.dart'; @@ -10,7 +11,6 @@ import 'io_tool/io_model.dart'; import 'io_tool/io_tool.dart'; import 'io_tool/manager_event_bus.dart'; import 'reciver_data.dart'; -import 'package:flutter_blue_plus/flutter_blue_plus.dart'; //连接状态回调 typedef ConnectStateCallBack = Function( @@ -62,7 +62,7 @@ class BlueManage { BluetoothConnectionState? bluetoothConnectionState = BluetoothConnectionState.disconnected; - BluetoothAdapterState? _adapterState = BluetoothAdapterState.unknown; + BluetoothAdapterState? _adapterState = BluetoothAdapterState.on; StreamSubscription? _adapterStateStateSubscription; // 听上报来的数据,参数来自前面扫描到的结果 @@ -99,6 +99,7 @@ class BlueManage { void _initAdapterStateStateSubscription() { _adapterStateStateSubscription ??= FlutterBluePlus.adapterState.listen((BluetoothAdapterState state) { + AppLog.log('蓝牙状态:$state'); _adapterState = state; }); } @@ -144,6 +145,7 @@ class BlueManage { final DateTime start = DateTime.now(); FlutterBluePlus.isSupported.then((bool isAvailable) async { if (isAvailable) { + // AppLog.log('startScanSingle 蓝牙状态 系统蓝牙状态:$_adapterState 蓝牙连接状态:$bluetoothConnectionState'); if (_adapterState == BluetoothAdapterState.on) { try { //android 扫描比较慢,取样只要 3 分之一 @@ -221,13 +223,14 @@ class BlueManage { {List? idList}) async { FlutterBluePlus.isSupported.then((bool isAvailable) async { if (isAvailable) { + // AppLog.log('startScan 蓝牙状态 系统蓝牙状态:$_adapterState 蓝牙连接状态:$bluetoothConnectionState'); if (_adapterState == BluetoothAdapterState.on) { try { FlutterBluePlus.startScan(timeout: Duration(seconds: timeout)); - final StreamSubscription> subscription = - FlutterBluePlus.scanResults.listen((List results) { + final StreamSubscription> subscription = FlutterBluePlus.scanResults.listen((List results) { scanDevices.clear(); for (final ScanResult scanResult in results) { + // AppLog.log('扫描到的设备:${scanResult.device.platformName} ${scanResult.advertisementData.advName} ${scanResult.rssi}'); // 判断名字为空的直接剔除 if (((scanResult.advertisementData.serviceUuids.isNotEmpty ? scanResult.advertisementData.serviceUuids[0] diff --git a/lib/main/lockDetail/card/addICCard/addICCard_page.dart b/lib/main/lockDetail/card/addICCard/addICCard_page.dart index ea42b681..b10c0169 100755 --- a/lib/main/lockDetail/card/addICCard/addICCard_page.dart +++ b/lib/main/lockDetail/card/addICCard/addICCard_page.dart @@ -17,7 +17,7 @@ class AddICCardPage extends StatefulWidget { State createState() => _AddICCardPageState(); } -class _AddICCardPageState extends State with RouteAware { +class _AddICCardPageState extends State with RouteAware { final AddICCardLogic logic = Get.put(AddICCardLogic()); final AddICCardState state = Get.find().state; diff --git a/lib/main/lockDetail/lockSet/basicInformation/uploadElectricQuantity/uploadElectricQuantity_page.dart b/lib/main/lockDetail/lockSet/basicInformation/uploadElectricQuantity/uploadElectricQuantity_page.dart index db4e0466..02096b54 100755 --- a/lib/main/lockDetail/lockSet/basicInformation/uploadElectricQuantity/uploadElectricQuantity_page.dart +++ b/lib/main/lockDetail/lockSet/basicInformation/uploadElectricQuantity/uploadElectricQuantity_page.dart @@ -11,6 +11,7 @@ import '../../../../../tools/dateTool.dart'; import '../../../../../tools/submitBtn.dart'; import '../../../../../tools/titleAppBar.dart'; import '../../../../../translations/trans_lib.dart'; +import '../../../../lockMian/lockMain/lockMain_logic.dart'; import '../../lockSet/lockSetInfo_entity.dart'; import 'uploadElectricQuantity_logic.dart'; @@ -56,7 +57,7 @@ class _UploadElectricQuantityPageState extends State children: [ Expanded( child: Text( - "${"电池1".tr}:${TranslationLoader.lanKeys!.electricQuantity!.tr}:${state.lockBasicInfo.value.electricQuantity ?? ""}%", + "${"电池1".tr}${TranslationLoader.lanKeys!.electricQuantity!.tr}:${state.lockBasicInfo.value.electricQuantity ?? ""}%", style: TextStyle(fontSize: 20.sp), )), ], @@ -68,7 +69,7 @@ class _UploadElectricQuantityPageState extends State children: [ Expanded( child: Text( - "${"电池2".tr}:${TranslationLoader.lanKeys!.electricQuantity!.tr}:${state.lockBasicInfo.value.electricQuantityStandby ?? ""}%", + "${"电池2".tr}${TranslationLoader.lanKeys!.electricQuantity!.tr}:${state.lockBasicInfo.value.electricQuantityStandby ?? ""}%", style: TextStyle(fontSize: 20.sp), )), ], @@ -80,7 +81,7 @@ class _UploadElectricQuantityPageState extends State children: [ Expanded( child: Text( - "${"电量更新时间".tr}:${DateTool().dateToYMDHNString(state.uploadElectricQuantityDate.value.toString())}", + "${"电量更新时间".tr}:${state.uploadElectricQuantityDate.value == 0 ? "-" : DateTool().dateToYMDHNString(state.uploadElectricQuantityDate.value.toString())}", style: TextStyle(fontSize: 20.sp), )), ], @@ -94,7 +95,11 @@ class _UploadElectricQuantityPageState extends State fontSize: 32.sp, // margin: EdgeInsets.only(left: 03.w, right: 30.w, top: 20.w), padding: EdgeInsets.only(top: 20.w, bottom: 20.w), - onClick: () { + onClick: () async { + final bool isNetWork = await LockMainLogic.to()?.judgeTheNetwork() ?? false; + if (!isNetWork) { + return; + } logic.getStarLockStatus(); }), ], diff --git a/lib/main/lockDetail/lockSet/burglarAlarm/burglarAlarm_page.dart b/lib/main/lockDetail/lockSet/burglarAlarm/burglarAlarm_page.dart index 308f80b5..06edf527 100755 --- a/lib/main/lockDetail/lockSet/burglarAlarm/burglarAlarm_page.dart +++ b/lib/main/lockDetail/lockSet/burglarAlarm/burglarAlarm_page.dart @@ -9,6 +9,7 @@ import '../../../../tools/appRouteObserver.dart'; import '../../../../tools/submitBtn.dart'; import '../../../../tools/titleAppBar.dart'; import '../../../../translations/trans_lib.dart'; +import '../../../lockMian/lockMain/lockMain_logic.dart'; import 'burglarAlarm_logic.dart'; class BurglarAlarmPage extends StatefulWidget { @@ -52,7 +53,7 @@ class _BurglarAlarmPageState extends State with RouteAware{ children: [ Expanded( child: Text( - "${TranslationLoader.lanKeys!.currentMode!.tr} : ${state.burglarAlarmEnable.value == 1 ? TranslationLoader.lanKeys!.opened!.tr : TranslationLoader.lanKeys!.closed!.tr}", + '${TranslationLoader.lanKeys!.currentMode!.tr} : ${state.burglarAlarmEnable.value == 1 ? TranslationLoader.lanKeys!.opened!.tr : TranslationLoader.lanKeys!.closed!.tr}', style: TextStyle(fontSize: 22.sp, fontWeight: FontWeight.w600), )), @@ -67,8 +68,12 @@ class _BurglarAlarmPageState extends State with RouteAware{ fontSize: 32.sp, // margin: EdgeInsets.only(left: 03.w, right: 30.w, top: 20.w), padding: EdgeInsets.only(top: 20.w, bottom: 20.w), - onClick: () { - logic.sendBurglarAlarm(); + onClick: () async { + final bool isNetWork = await LockMainLogic.to()?.judgeTheNetwork() ?? false; + if (!isNetWork) { + return; + } + logic.sendBurglarAlarm(); })), ], ), diff --git a/lib/main/lockDetail/palm/addPalm/addPalm_logic.dart b/lib/main/lockDetail/palm/addPalm/addPalm_logic.dart index da07652c..7e4910cb 100755 --- a/lib/main/lockDetail/palm/addPalm/addPalm_logic.dart +++ b/lib/main/lockDetail/palm/addPalm/addPalm_logic.dart @@ -123,7 +123,7 @@ class AddPalmLogic extends BaseGetXController { break; case 0xFC: // 指纹已满 - showToast('锁上面添加卡已满'.tr); + showToast('锁上面添加掌静脉已满'.tr); Get.close(1); break; case 0xFB: @@ -192,7 +192,7 @@ class AddPalmLogic extends BaseGetXController { } // 取消添加指纹 - Future senderCancelAddCardCommand() async { + Future senderCancelAddPalmCommand() async { BlueManage().blueSendData(BlueManage().connectDeviceName, (BluetoothConnectionState deviceConnectionState) async { if (deviceConnectionState == BluetoothConnectionState.connected){ final List? privateKey = await Storage.getStringList(saveBluePrivateKey); diff --git a/lib/main/lockDetail/palm/addPalm/addPalm_page.dart b/lib/main/lockDetail/palm/addPalm/addPalm_page.dart index 2f68b1e1..10b6163a 100755 --- a/lib/main/lockDetail/palm/addPalm/addPalm_page.dart +++ b/lib/main/lockDetail/palm/addPalm/addPalm_page.dart @@ -7,6 +7,7 @@ import 'package:star_lock/main/lockDetail/palm/addPalm/addPalm_state.dart'; import '../../../../../app_settings/app_colors.dart'; import '../../../../../tools/submitBtn.dart'; import '../../../../../tools/titleAppBar.dart'; +import '../../../../tools/appRouteObserver.dart'; class AddPalmPage extends StatefulWidget { const AddPalmPage({Key? key}) : super(key: key); @@ -15,7 +16,7 @@ class AddPalmPage extends StatefulWidget { State createState() => _AddPalmPageState(); } -class _AddPalmPageState extends State { +class _AddPalmPageState extends State with RouteAware{ final AddPalmLogic logic = Get.put(AddPalmLogic()); final AddPalmState state = Get.find().state; @@ -24,7 +25,7 @@ class _AddPalmPageState extends State { return Scaffold( backgroundColor: Colors.white, appBar: TitleAppBar( - barTitle: '添加手掌', + barTitle: '添加掌静脉', haveBack: true, backgroundColor: AppColors.mainColor), body: ListView( @@ -100,4 +101,54 @@ class _AddPalmPageState extends State { ), ); } + + @override + void didChangeDependencies() { + super.didChangeDependencies(); + + /// 路由订阅 + AppRouteObserver().routeObserver.subscribe(this, ModalRoute.of(context)!); + } + + @override + void dispose() { + /// 取消路由订阅 + AppRouteObserver().routeObserver.unsubscribe(this); + super.dispose(); + } + + /// 从上级界面进入 当前界面即将出现 + @override + void didPush() { + super.didPush(); + state.ifCurrentScreen.value = true; + } + + /// 返回上一个界面 当前界面即将消失 + @override + void didPop() { + super.didPop(); + logic.cancelBlueConnetctToastTimer(); + state.ifCurrentScreen.value = false; + + if(state.ifAddState.value){ + logic.senderCancelAddPalmCommand(); + } + } + + /// 从下级返回 当前界面即将出现 + @override + void didPopNext() { + super.didPopNext(); + state.ifCurrentScreen.value = true; + } + + /// 进入下级界面 当前界面即将消失 + @override + void didPushNext() { + super.didPushNext(); + logic.cancelBlueConnetctToastTimer(); + + state.ifCurrentScreen.value = false; + } } diff --git a/lib/main/lockDetail/palm/palmDetail/palmDetail_page.dart b/lib/main/lockDetail/palm/palmDetail/palmDetail_page.dart index 2d35f80c..cde24882 100755 --- a/lib/main/lockDetail/palm/palmDetail/palmDetail_page.dart +++ b/lib/main/lockDetail/palm/palmDetail/palmDetail_page.dart @@ -34,14 +34,14 @@ class _PalmDetailPageState extends State with RouteAware { return Scaffold( backgroundColor: AppColors.mainBackgroundColor, appBar: TitleAppBar( - barTitle: '手掌详情', + barTitle: '掌静脉详情', haveBack: true, backgroundColor: AppColors.mainColor, ), body: ListView( children: [ Obx(() => CommonItem( - leftTitel: '手掌号', + leftTitel: '掌静脉号', rightTitle: state.typeNumber.value, isHaveDirection: false, isHaveLine: true)), diff --git a/lib/main/lockDetail/remoteControl/addRemoteControl/addRemoteControl_logic.dart b/lib/main/lockDetail/remoteControl/addRemoteControl/addRemoteControl_logic.dart index ec634e41..e5c0cd23 100644 --- a/lib/main/lockDetail/remoteControl/addRemoteControl/addRemoteControl_logic.dart +++ b/lib/main/lockDetail/remoteControl/addRemoteControl/addRemoteControl_logic.dart @@ -122,7 +122,7 @@ class AddRemoteControlLogic extends BaseGetXController{ break; case 0xFC: // 遥控已满 - showToast('锁上面添加卡已满'.tr); + showToast('锁上面遥控已满'.tr); Get.close(1); break; case 0xFB: diff --git a/lib/mine/minePersonInfo/minePersonInfoEditName/minePersonInfoEditName_state.dart b/lib/mine/minePersonInfo/minePersonInfoEditName/minePersonInfoEditName_state.dart index f997e17c..043636bd 100755 --- a/lib/mine/minePersonInfo/minePersonInfoEditName/minePersonInfoEditName_state.dart +++ b/lib/mine/minePersonInfo/minePersonInfoEditName/minePersonInfoEditName_state.dart @@ -4,6 +4,13 @@ import 'package:get/get.dart'; import '../minePersonInfoPage/minePersonInfo_entity.dart'; class MinePersonInfoEditNamePageState { + + MinePersonInfoEditNamePageState() { + Map map = Get.arguments; + mineInfoData.value = map['mineInfoData']; + nickNameController.text = mineInfoData.value.nickname ?? ''; + inputNickName.value = mineInfoData.value.nickname ?? ''; + } final mineInfoData = MinePersonInfoData().obs; final TextEditingController nickNameController = TextEditingController(); @@ -11,11 +18,4 @@ class MinePersonInfoEditNamePageState { final inputNickName = ''.obs; var canSub = false.obs; bool get nickNameIsOK => inputNickName.value.isNotEmpty; - - MinePersonInfoEditNamePageState() { - Map map = Get.arguments; - mineInfoData.value = map["mineInfoData"]; - nickNameController.text = mineInfoData.value.nickname!; - inputNickName.value = mineInfoData.value.nickname!; - } }