From 21854e97a14420cbb22b0bc71afc26db59ce02ae Mon Sep 17 00:00:00 2001 From: Daisy <> Date: Wed, 13 Mar 2024 15:51:54 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=8A=E6=9E=B6?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E5=87=BA=E7=8E=B0=E7=9A=84=E6=8B=92=E7=BB=9D?= =?UTF-8?q?=E7=9B=B8=E6=9C=BA=E6=9D=83=E9=99=90=E5=90=8E=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=A4=B4=E5=83=8F=E5=8A=9F=E8=83=BD=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../android/app/src/main/AndroidManifest.xml | 1 - star_lock/ios/Podfile | 4 +- .../minePersonInfo_page.dart | 147 +++++++++++------- star_lock/pubspec.yaml | 1 + 4 files changed, 97 insertions(+), 56 deletions(-) diff --git a/star_lock/android/app/src/main/AndroidManifest.xml b/star_lock/android/app/src/main/AndroidManifest.xml index db10da2b..06212362 100644 --- a/star_lock/android/app/src/main/AndroidManifest.xml +++ b/star_lock/android/app/src/main/AndroidManifest.xml @@ -30,7 +30,6 @@ - diff --git a/star_lock/ios/Podfile b/star_lock/ios/Podfile index c3a7ff7e..fc1e6a3b 100644 --- a/star_lock/ios/Podfile +++ b/star_lock/ios/Podfile @@ -64,7 +64,7 @@ post_install do |installer| # 'PERMISSION_CONTACTS=1', ## dart: PermissionGroup.camera - # 'PERMISSION_CAMERA=1', + 'PERMISSION_CAMERA=1', ## dart: PermissionGroup.microphone # 'PERMISSION_MICROPHONE=1', @@ -73,7 +73,7 @@ post_install do |installer| # 'PERMISSION_SPEECH_RECOGNIZER=1', ## dart: PermissionGroup.photos - # 'PERMISSION_PHOTOS=1', + 'PERMISSION_PHOTOS=1', # dart: [PermissionGroup.location, PermissionGroup.locationAlways, PermissionGroup.locationWhenInUse] 'PERMISSION_LOCATION=1', diff --git a/star_lock/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_page.dart b/star_lock/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_page.dart index 61a3557f..e08b40d6 100644 --- a/star_lock/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_page.dart +++ b/star_lock/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_page.dart @@ -43,48 +43,42 @@ class _MinePersonInfoPageState extends State { backgroundColor: AppColors.mainColor), body: Column( children: [ - Obx(() => CommonItem( - leftTitel: TranslationLoader.lanKeys!.avatar!.tr, - rightTitle: "", - allHeight: 100.h, - isHaveLine: true, - isHaveDirection: true, - isHaveRightWidget: true, - rightWidget: ClipOval( - child: state.mineInfoData.value.headUrl != null - ? CachedNetworkImage( - imageUrl: Uri.encodeFull( - state.mineInfoData.value.headUrl!), - width: 72.w, - height: 72.w, - fit: BoxFit.fill, - placeholder: (context, url) => Image.asset( - 'images/controls_user.png', - width: 72.w, - height: 72.w, - fit: BoxFit.fill, - )) - : Image.asset( - 'images/controls_user.png', - width: 72.w, - height: 72.w, - fit: BoxFit.fill, - ), - ), - action: () async { - //安卓平台下首次进入应用需向用户告知获取权限用途弹窗 - if (Platform.isAndroid) { - AppFirstEnterHandle() - .getAppFirstEnter(context, isAgreeCamera); - var getFlag = await Storage.getString(isAgreeCamera); - if (getFlag == isAgreeCamera) { - requestCameraPermission(); - } - } else { - requestCameraPermission(); - } - }, - )), + CommonItem( + leftTitel: TranslationLoader.lanKeys!.avatar!.tr, + rightTitle: "", + allHeight: 100.h, + isHaveLine: true, + isHaveDirection: true, + isHaveRightWidget: true, + rightWidget: ClipOval( + child: state.image != null + ? Image.file( + File(state.image!.path), + width: 72.w, + height: 72.w, + fit: BoxFit.fill, + ) + : Image.asset( + 'images/controls_user.png', + width: 72.w, + height: 72.w, + fit: BoxFit.fill, + ), + ), + action: () async { + //安卓平台下首次进入应用需向用户告知获取权限用途弹窗 + if (Platform.isAndroid) { + AppFirstEnterHandle() + .getAppFirstEnter(context, isAgreeCamera); + var getFlag = await Storage.getString(isAgreeCamera); + if (getFlag == isAgreeCamera) { + _openModalBottomSheet(); + } + } else { + _openModalBottomSheet(); + } + }, + ), Obx(() => CommonItem( leftTitel: TranslationLoader.lanKeys!.nickName!.tr, rightTitle: state.mineInfoData.value.nickname != null @@ -189,7 +183,7 @@ class _MinePersonInfoPageState extends State { if (status.isGranted) { // 如果权限已经被授予,执行您的相机操作 // 这里可以调用打开相机的方法或者跳转到相机页面等 - _openModalBottomSheet(); + selectCamera(); } else { // 如果权限尚未被授予,请求相机权限 // 此处会显示系统权限请求对话框 @@ -197,28 +191,53 @@ class _MinePersonInfoPageState extends State { if (status.isGranted) { // 如果用户授予了相机权限,执行您的相机操作 - _openModalBottomSheet(); + selectCamera(); } else { // 如果用户拒绝了相机权限,您可以提供适当的提示 // 或者引导用户手动授予权限 - _showPermissinDialog(); + showPermissionDeniedDialog(); } } } - Future _showPermissinDialog() async { + Future requestPhotoPermission() async { + // 检查是否已经授予相机权限 + PermissionStatus status = await Permission.photos.status; + + if (status.isGranted) { + // 如果权限已经被授予,执行您的相机操作 + // 这里可以调用打开相机的方法或者跳转到相机页面等 + selectImage(); + } else { + // 如果权限尚未被授予,请求相机权限 + // 此处会显示系统权限请求对话框 + status = await Permission.photos.request(); + + if (status.isGranted) { + // 如果用户授予了相机权限,执行您的相机操作 + selectImage(); + } else { + // 如果用户拒绝了相机权限,您可以提供适当的提示 + // 或者引导用户手动授予权限 + showPermissionDeniedDialog(); + } + } + } + + // 显示权限被永久拒绝的提示对话框 + void showPermissionDeniedDialog() { showDialog( context: context, builder: (BuildContext context) { return AlertDialog( - title: const Text('Permission Required'), - content: const Text( - 'You need to grant camera permission to use this feature.'), + title: const Text('权限被拒绝'), + content: const Text('请手动在系统设置中开启相册权限以继续使用应用。'), actions: [ TextButton( - child: const Text('OK'), + child: const Text('去设置'), onPressed: () { - Navigator.of(context).pop(); + openAppSettings(); // 打开系统设置页面 + Navigator.of(context).pop(); // 关闭对话框 }, ), ], @@ -240,9 +259,11 @@ class _MinePersonInfoPageState extends State { int getSelectIndex = value; if (getSelectIndex == 0) { //拍照选项 - selectCamera(); + // selectCamera(); + requestCameraPermission(); } else if (getSelectIndex == 1) { - selectImage(); + // selectImage(); + requestPhotoPermission(); } }, ); @@ -278,4 +299,24 @@ class _MinePersonInfoPageState extends State { setState(() {}); } } + + // child: state.mineInfoData.value.headUrl != null + // ? CachedNetworkImage( + // imageUrl: Uri.encodeFull( + // state.mineInfoData.value.headUrl!), + // width: 72.w, + // height: 72.w, + // fit: BoxFit.fill, + // placeholder: (context, url) => Image.asset( + // 'images/controls_user.png', + // width: 72.w, + // height: 72.w, + // fit: BoxFit.fill, + // )) + // : Image.asset( + // 'images/controls_user.png', + // width: 72.w, + // height: 72.w, + // fit: BoxFit.fill, + // ), } diff --git a/star_lock/pubspec.yaml b/star_lock/pubspec.yaml index 01d85bb6..625f0740 100644 --- a/star_lock/pubspec.yaml +++ b/star_lock/pubspec.yaml @@ -140,6 +140,7 @@ dependencies: #侧滑删除 flutter_slidable: ^3.0.1 audio_service: ^0.18.12 + app_settings: ^5.1.1 system_settings: ^2.0.0 dev_dependencies: From 14b9bd9ba253a1ff2fc0eaa7c1eb4c4376e45e91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AD=8F=E5=B0=91=E9=98=B3?= <786612630@qq.com> Date: Wed, 13 Mar 2024 16:17:48 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=8C=87=E7=BA=B9=E3=80=81=E5=8D=A1?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=98=AF=E5=90=A6=E6=98=AF=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=91=98=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ios/Runner.xcodeproj/project.pbxproj | 2 +- .../xcshareddata/xcschemes/Runner.xcscheme | 2 +- .../card/addCardType/addCardType_logic.dart | 1 + .../card/addCardType/addCardType_page.dart | 4 +-- .../card/addCardType/addCardType_state.dart | 1 + .../card/addICCard/addICCard_logic.dart | 6 ++--- .../card/addICCard/addICCard_state.dart | 3 +++ .../card/cardDetail/cardDetail_state.dart | 27 ++++++++++--------- .../card/cardList/cardList_page.dart | 2 +- .../addFingerprint/addFingerprint_logic.dart | 8 +++--- .../addFingerprint/addFingerprint_state.dart | 3 +++ .../addFingerprintType_logic.dart | 1 + .../addFingerprintType_page.dart | 4 +-- .../addFingerprintType_state.dart | 1 + .../fingerprintDetail_state.dart | 2 +- .../fingerprintList/fingerprintList_page.dart | 4 ++- .../main/lockMian/lockMain/lockMain_page.dart | 4 ++- .../starLockApplication.dart | 1 - 18 files changed, 46 insertions(+), 30 deletions(-) diff --git a/star_lock/ios/Runner.xcodeproj/project.pbxproj b/star_lock/ios/Runner.xcodeproj/project.pbxproj index 21e7f887..948be51b 100644 --- a/star_lock/ios/Runner.xcodeproj/project.pbxproj +++ b/star_lock/ios/Runner.xcodeproj/project.pbxproj @@ -459,7 +459,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1430; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { diff --git a/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 77bd9a21..2820dca7 100644 --- a/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/star_lock/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ { activeColor: CupertinoColors.activeBlue, trackColor: CupertinoColors.systemGrey5, thumbColor: CupertinoColors.white, - value: state.isStressFingerprint.value, + value: state.isAdministrator.value, onChanged: (value) { setState(() { - state.isStressFingerprint.value = value; + state.isAdministrator.value = value; }); }, ); diff --git a/star_lock/lib/main/lockDetail/card/addCardType/addCardType_state.dart b/star_lock/lib/main/lockDetail/card/addCardType/addCardType_state.dart index 8b57a0d0..601e330e 100644 --- a/star_lock/lib/main/lockDetail/card/addCardType/addCardType_state.dart +++ b/star_lock/lib/main/lockDetail/card/addCardType/addCardType_state.dart @@ -8,6 +8,7 @@ class AddCardTypeState{ final selectType = "0".obs;// 0永久 1显示 2循环 final fromType = 1.obs; // // 1从添加钥匙列表进入 2从考勤添加员工入口进入 final isStressFingerprint = false.obs; + final isAdministrator = false.obs;// 是否是管理员 var beginTime = "".obs;// 开始时间 var endTime = "".obs;// 结束时间 diff --git a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_logic.dart b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_logic.dart index 8b40091b..442addc2 100644 --- a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_logic.dart +++ b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_logic.dart @@ -183,7 +183,7 @@ class AddICCardLogic extends BaseGetXController{ IoSenderManage.senderAddStressICCardCommand( keyID:"1", userID:await Storage.getUid(), - icCardNo:1, + icCardNo:state.isAdministrator.value == "2" ? 254 : 1, cardType:1, useCountLimit:1, // startTime:0x11223344, @@ -237,7 +237,7 @@ class AddICCardLogic extends BaseGetXController{ IoSenderManage.senderAddICCardCommand( keyID:"1", userID:await Storage.getUid(), - cardNo:1, + cardNo:state.isAdministrator.value == "2" ? 254 : 1, useCountLimit:0xff, // startTime:0x11223344, // endTime:0x11223344, @@ -278,7 +278,7 @@ class AddICCardLogic extends BaseGetXController{ IoSenderManage.senderAddStressICCardCommand( keyID:"1", userID:await Storage.getUid(), - icCardNo:1, + icCardNo:state.isAdministrator.value == "2" ? 254 : 1, cardType:1, useCountLimit:1, startTime:0x11223344, diff --git a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_state.dart b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_state.dart index 2b4cad1f..d3e4bfed 100644 --- a/star_lock/lib/main/lockDetail/card/addICCard/addICCard_state.dart +++ b/star_lock/lib/main/lockDetail/card/addICCard/addICCard_state.dart @@ -13,6 +13,7 @@ class AddICCardState{ final cardNumber = "".obs; final cardType = "".obs; final isCoerced = "".obs; + final isAdministrator = "".obs; final startDate = "".obs; final weekDay = [].obs; final fromType = 0.obs; @@ -26,6 +27,8 @@ class AddICCardState{ cardNumber.value = map["cardNumber"]; cardType.value = map["cardType"]; isCoerced.value = map["isCoerced"]; + isAdministrator.value = map["isAdministrator"]; + print("isAdministrator.value isAdministrator.value:${isAdministrator.value}"); startDate.value = map["startDate"]; lockId.value = map["lockId"]; weekDay.value = map["weekDay"]; diff --git a/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_state.dart b/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_state.dart index 8c66242c..eb1b2b95 100644 --- a/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_state.dart +++ b/star_lock/lib/main/lockDetail/card/cardDetail/cardDetail_state.dart @@ -27,17 +27,20 @@ class CardDetailState{ final isStressFingerprint = false.obs; CardDetailState() { Map map = Get.arguments; - fingerprintItemData.value = map["fingerprintItemData"]; - keyId.value = fingerprintItemData.value.cardId!; - typeNumber.value = fingerprintItemData.value.cardNumber!; - typeName.value = fingerprintItemData.value.cardName!; - changeNameController.text = typeName.value; - effectiveDateTime.value = fingerprintItemData.value.startDate!; - failureDateTime.value = fingerprintItemData.value.endDate!; - keyType.value = fingerprintItemData.value.cardType!; - adder.value = fingerprintItemData.value.senderUsername!; - addTime.value = fingerprintItemData.value.createDate!; - isStressFingerprint.value = fingerprintItemData.value.isCoerced! == 2 ? true : false; - weekDay.value = fingerprintItemData.value.weekDay!; + if ((map["fingerprintItemData"] != null)) { + fingerprintItemData.value = map["fingerprintItemData"]; + keyId.value = fingerprintItemData.value.cardId!; + typeNumber.value = fingerprintItemData.value.cardNumber!; + typeName.value = fingerprintItemData.value.cardName!; + changeNameController.text = typeName.value; + effectiveDateTime.value = fingerprintItemData.value.startDate!; + failureDateTime.value = fingerprintItemData.value.endDate!; + keyType.value = fingerprintItemData.value.cardType!; + adder.value = fingerprintItemData.value.senderUsername!; + addTime.value = fingerprintItemData.value.createDate!; + isStressFingerprint.value = + fingerprintItemData.value.isCoerced! == 2 ? true : false; + weekDay.value = fingerprintItemData.value.weekDay!; + } } } \ No newline at end of file diff --git a/star_lock/lib/main/lockDetail/card/cardList/cardList_page.dart b/star_lock/lib/main/lockDetail/card/cardList/cardList_page.dart index 7541bf17..b427e91a 100644 --- a/star_lock/lib/main/lockDetail/card/cardList/cardList_page.dart +++ b/star_lock/lib/main/lockDetail/card/cardList/cardList_page.dart @@ -37,7 +37,7 @@ class _CardListPageState extends State with RouteAware { var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); if (isDemoMode == false) { logic.getICCardListData().then((FingerprintListDataEntity value){ - setState(() {}); + if(mounted) setState(() {}); }); } } diff --git a/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_logic.dart b/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_logic.dart index 866de542..7cb49484 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_logic.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_logic.dart @@ -79,7 +79,7 @@ class AddFingerprintLogic extends BaseGetXController { IoSenderManage.senderAddFingerprintCommand( keyID:"1", userID:await Storage.getUid(), - fingerNo:1, + fingerNo:state.isAdministrator.value == "2" ? 254 : 1, useCountLimit:0xff, // startTime:0x11223344, // endTime:0x11223344, @@ -227,7 +227,7 @@ class AddFingerprintLogic extends BaseGetXController { IoSenderManage.senderAddStressFingerprintCommand( keyID:"1", userID:await Storage.getUid(), - fingerNo:1, + fingerNo:state.isAdministrator.value == "2" ? 254 : 1, fingerType:1, useCountLimit:1, // startTime:0x11223344, @@ -280,7 +280,7 @@ class AddFingerprintLogic extends BaseGetXController { IoSenderManage.senderAddFingerprintCommand( keyID:"1", userID:await Storage.getUid(), - fingerNo:1, + fingerNo:state.isAdministrator.value == "2" ? 254 : 1, useCountLimit:0xff, // startTime:0x11223344, // endTime:0x11223344, @@ -321,7 +321,7 @@ class AddFingerprintLogic extends BaseGetXController { IoSenderManage.senderAddStressFingerprintCommand( keyID:"1", userID:await Storage.getUid(), - fingerNo:1, + fingerNo:state.isAdministrator.value == "2" ? 254 : 1, fingerType:1, useCountLimit:1, // startTime:0x11223344, diff --git a/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_state.dart b/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_state.dart index e2a387ef..071a4aa4 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_state.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/addFingerprint/addFingerprint_state.dart @@ -17,6 +17,7 @@ class AddFingerprintState{ // final fingerprintNumber = "".obs; final fingerprintType = "".obs; final isCoerced = "".obs; + final isAdministrator = "".obs; final startDate = "".obs; final weekDay = [].obs; final fromType = 1.obs; @@ -31,6 +32,8 @@ class AddFingerprintState{ fingerprintType.value = map["fingerprintType"]; isCoerced.value = map["isCoerced"]; print("isCoerced.valueisCoerced.value:${isCoerced.value}"); + isAdministrator.value = map["isAdministrator"]; + print("isAdministrator.value isAdministrator.value:${isAdministrator.value}"); startDate.value = map["startDate"]; lockId.value = map["lockId"]; weekDay.value = map["weekDay"]; diff --git a/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_logic.dart b/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_logic.dart index 82fbb4d2..73ae948e 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_logic.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_logic.dart @@ -84,6 +84,7 @@ class AddFingerprintTypeLogic extends BaseGetXController{ "startDate": startDate, "weekDay": state.weekdaysList.value, "fromType": state.fromType.value, + "isAdministrator": state.isAdministrator.value == false ? "1" : "2", // 1:不是管理员 2:是管理员 }); } diff --git a/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_page.dart b/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_page.dart index 935b20e5..08e81b1d 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_page.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_page.dart @@ -352,10 +352,10 @@ class _AddFingerprintTypePageState extends State { activeColor: CupertinoColors.activeBlue, trackColor: CupertinoColors.systemGrey5, thumbColor: CupertinoColors.white, - value: state.isStressFingerprint.value, + value: state.isAdministrator.value, onChanged: (value) { setState(() { - state.isStressFingerprint.value = value; + state.isAdministrator.value = value; }); }, ); diff --git a/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_state.dart b/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_state.dart index eaf5039c..f4323028 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_state.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/addFingerprintSelectType/addFingerprintType_state.dart @@ -7,6 +7,7 @@ class AddFingerprintState{ final selectType = "0".obs;// 0永久 1显示 2循环 final fromType = 1.obs; // // 1从添加钥匙列表进入 2从考勤添加员工入口进入 final isStressFingerprint = false.obs; + final isAdministrator = false.obs;// 是否是管理员 var beginTime = "".obs;// 开始时间 var endTime = "".obs;// 结束时间 diff --git a/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart b/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart index 8fdf8d73..29711cd3 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/fingerprintDetail/fingerprintDetail_state.dart @@ -25,7 +25,7 @@ class FingerprintDetailState{ final isStressFingerprint = false.obs; FingerprintDetailState() { Map map = Get.arguments; - if ((map["keyInfo"] != null)) { + if ((map["fingerprintItemData"] != null)) { fingerprintItemData.value = map["fingerprintItemData"]; keyId.value = fingerprintItemData.value.fingerprintId!; typeNumber.value = fingerprintItemData.value.fingerprintNumber!; diff --git a/star_lock/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_page.dart b/star_lock/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_page.dart index 7fdc8446..93d7c274 100644 --- a/star_lock/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_page.dart +++ b/star_lock/lib/main/lockDetail/fingerprint/fingerprintList/fingerprintList_page.dart @@ -37,7 +37,9 @@ class _FingerprintListPageState extends State with RouteAwa var isDemoMode = await Storage.getBool(ifIsDemoModeOrNot); if (isDemoMode == false) { logic.getFingerprintsListData().then((FingerprintListDataEntity value){ - setState(() {}); + if (mounted) { + setState(() {}); + } }); } } diff --git a/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart b/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart index 12dc3127..d3946e64 100644 --- a/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart +++ b/star_lock/lib/main/lockMian/lockMain/lockMain_page.dart @@ -41,7 +41,9 @@ class _StarLockMainPageState extends State with BaseWidget { // await logic.getStarLockInfo(); // setState(() {}); logic.getStarLockInfo().then((LockListInfoEntity value) { - setState(() {}); + if (mounted) { + setState(() {}); + } }); } diff --git a/star_lock/lib/starLockApplication/starLockApplication.dart b/star_lock/lib/starLockApplication/starLockApplication.dart index ffa71523..fbf664a9 100644 --- a/star_lock/lib/starLockApplication/starLockApplication.dart +++ b/star_lock/lib/starLockApplication/starLockApplication.dart @@ -4,7 +4,6 @@ import 'package:star_lock/tools/appFirstEnterHandle.dart'; import 'package:star_lock/tools/storage.dart'; import '../main/lockMian/lockMain/lockMain_page.dart'; -import '../versionUndate/versionUndateTool.dart'; class StarLockApplication extends StatefulWidget { const StarLockApplication({Key? key}) : super(key: key);