Merge branch 'develop_liuyf' into develop

This commit is contained in:
Liuyf 2025-04-23 18:06:58 +08:00
commit 4dcbd4d447
14 changed files with 59 additions and 47 deletions

View File

@ -119,9 +119,9 @@ android {
resValue "string", "app_name", "TTLock Pro" resValue "string", "app_name", "TTLock Pro"
manifestPlaceholders = [ manifestPlaceholders = [
JPUSH_PKGNAME : "com.skychip.lock", JPUSH_PKGNAME : "com.skychip.lock",
JPUSH_APPKEY : "7ff37d174c1a568a89e98dad",//--skyAppKey JPUSH_APPKEY : "7ff37d174c1a568a89e98dad",//--skyAppKey
JPUSH_CHANNEL : "flutter_channel", JPUSH_CHANNEL : "flutter_channel",
XIAOMI_APPID : "MI-2882303761520287291", XIAOMI_APPID : "MI-2882303761520287291",
XIAOMI_APPKEY : "MI-5352028744291", XIAOMI_APPKEY : "MI-5352028744291",
OPPO_APPKEY : "OP-ccae67a4a8c1470a8350b0d6a89f8105", OPPO_APPKEY : "OP-ccae67a4a8c1470a8350b0d6a89f8105",
OPPO_APPID : "OP-31586713", OPPO_APPID : "OP-31586713",
@ -174,9 +174,9 @@ android {
signingConfig signingConfigs.xhj_bundle signingConfig signingConfigs.xhj_bundle
resValue "string", "app_name", "Star Lock" resValue "string", "app_name", "Star Lock"
manifestPlaceholders = [ manifestPlaceholders = [
JPUSH_PKGNAME : "ltd.xhjcn.lock", JPUSH_PKGNAME: "ltd.xhjcn.lock",
JPUSH_APPKEY : "5ccdb9b8d3faaae66ba5d02e", JPUSH_APPKEY : "5ccdb9b8d3faaae66ba5d02e",
JPUSH_CHANNEL : "flutter_channel", JPUSH_CHANNEL: "flutter_channel",
] ]
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-xhj.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-xhj.pro'
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 KiB

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@drawable/sky_login_btn_normal,@drawable/xhj_login_btn_normal,@drawable/icon_left_grey,@drawable/check,@drawable/uncheck"/>

View File

@ -9,7 +9,7 @@
"client_info": { "client_info": {
"mobilesdk_app_id": "1:281500445726:android:ddf52ac7b7f83cf5c4todo", "mobilesdk_app_id": "1:281500445726:android:ddf52ac7b7f83cf5c4todo",
"android_client_info": { "android_client_info": {
"package_name": "com.xhjcn.lock" "package_name": "com.xhjcn.lock.pre"
} }
}, },
"oauth_client": [], "oauth_client": [],
@ -28,7 +28,7 @@
"client_info": { "client_info": {
"mobilesdk_app_id": "1:281500445726:android:468195b9cc68dd6cc4todo", "mobilesdk_app_id": "1:281500445726:android:468195b9cc68dd6cc4todo",
"android_client_info": { "android_client_info": {
"package_name": "com.xhjcn.lock.local" "package_name": "com.xhjcn.lock.pre"
} }
}, },
"oauth_client": [], "oauth_client": [],

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@ -1,4 +1,3 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_slidable/flutter_slidable.dart'; import 'package:flutter_slidable/flutter_slidable.dart';
@ -31,7 +30,9 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
void initState() { void initState() {
super.initState(); super.initState();
logic = Get.put(LockListLogic(widget.lockListInfoGroupEntity)); logic = Get.put(LockListLogic(widget.lockListInfoGroupEntity));
state = Get.find<LockListLogic>().state; state = Get
.find<LockListLogic>()
.state;
} }
@override @override
@ -57,15 +58,14 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
} }
// //
Widget _buildLockExpandedList( Widget _buildLockExpandedList(BuildContext context, int index,
BuildContext context, int index, GroupList itemData) { GroupList itemData) {
final List<LockListInfoItemEntity> lockItemList = final List<LockListInfoItemEntity> lockItemList =
itemData.lockList ?? <LockListInfoItemEntity>[]; itemData.lockList ?? <LockListInfoItemEntity>[];
return LockListGroupView( return LockListGroupView(
onTap: () { onTap: () {
// //
if (itemData.isChecked) { if (itemData.isChecked) {} else {}
} else {}
setState(() {}); setState(() {});
}, },
typeImgList: const <dynamic>[], typeImgList: const <dynamic>[],
@ -104,21 +104,21 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
), ),
child: lockInfoListItem(keyInfo, isLast, () { child: lockInfoListItem(keyInfo, isLast, () {
if ((keyInfo.keyType == XSConstantMacro.keyTypeTime || if ((keyInfo.keyType == XSConstantMacro.keyTypeTime ||
keyInfo.keyType == XSConstantMacro.keyTypeLoop) && keyInfo.keyType == XSConstantMacro.keyTypeLoop) &&
(keyInfo.keyStatus == (keyInfo.keyStatus ==
XSConstantMacro.keyStatusWaitIneffective)) { XSConstantMacro.keyStatusWaitIneffective)) {
logic.showToast('您的钥匙未生效'.tr); logic.showToast('您的钥匙未生效'.tr);
return; return;
} }
if ((keyInfo.keyType == XSConstantMacro.keyTypeTime || if ((keyInfo.keyType == XSConstantMacro.keyTypeTime ||
keyInfo.keyType == XSConstantMacro.keyTypeLong || keyInfo.keyType == XSConstantMacro.keyTypeLong ||
keyInfo.keyType == XSConstantMacro.keyTypeLoop) && keyInfo.keyType == XSConstantMacro.keyTypeLoop) &&
(keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen)) { (keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen)) {
logic.showToast('您的钥匙已冻结'.tr); logic.showToast('您的钥匙已冻结'.tr);
return; return;
} }
if ((keyInfo.keyType == XSConstantMacro.keyTypeTime || if ((keyInfo.keyType == XSConstantMacro.keyTypeTime ||
keyInfo.keyType == XSConstantMacro.keyTypeLoop) && keyInfo.keyType == XSConstantMacro.keyTypeLoop) &&
(keyInfo.keyStatus == XSConstantMacro.keyStatusExpired)) { (keyInfo.keyStatus == XSConstantMacro.keyStatusExpired)) {
logic.showToast('您的钥匙已过期'.tr); logic.showToast('您的钥匙已过期'.tr);
return; return;
@ -135,8 +135,8 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
); );
} }
Widget lockInfoListItem( Widget lockInfoListItem(LockListInfoItemEntity keyInfo, bool isLast,
LockListInfoItemEntity keyInfo, bool isLast, Function() action) { Function() action) {
return GestureDetector( return GestureDetector(
onTap: action, onTap: action,
child: Container( child: Container(
@ -146,15 +146,15 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
: EdgeInsets.only(left: 20.w, right: 20.w, top: 20.w), : EdgeInsets.only(left: 20.w, right: 20.w, top: 20.w),
decoration: BoxDecoration( decoration: BoxDecoration(
color: (((keyInfo.keyType == XSConstantMacro.keyTypeTime || color: (((keyInfo.keyType == XSConstantMacro.keyTypeTime ||
keyInfo.keyType == XSConstantMacro.keyTypeLoop) && keyInfo.keyType == XSConstantMacro.keyTypeLoop) &&
(keyInfo.keyStatus == (keyInfo.keyStatus ==
XSConstantMacro.keyStatusWaitIneffective || XSConstantMacro.keyStatusWaitIneffective ||
keyInfo.keyStatus == keyInfo.keyStatus ==
XSConstantMacro.keyStatusFrozen || XSConstantMacro.keyStatusFrozen ||
keyInfo.keyStatus == keyInfo.keyStatus ==
XSConstantMacro.keyStatusExpired)) || XSConstantMacro.keyStatusExpired)) ||
(keyInfo.keyType == XSConstantMacro.keyTypeLong && (keyInfo.keyType == XSConstantMacro.keyTypeLong &&
keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen)) keyInfo.keyStatus == XSConstantMacro.keyStatusFrozen))
? AppColors.greyBackgroundColor ? AppColors.greyBackgroundColor
: Colors.white, : Colors.white,
borderRadius: BorderRadius.circular(20.w), borderRadius: BorderRadius.circular(20.w),
@ -243,14 +243,14 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
decoration: BoxDecoration( decoration: BoxDecoration(
borderRadius: BorderRadius.circular(5.w), borderRadius: BorderRadius.circular(5.w),
color: color:
DateTool().compareTimeIsOvertime(keyInfo.endDate!) DateTool().compareTimeIsOvertime(keyInfo.endDate!)
? AppColors.listTimeYellowColor ? AppColors.listTimeYellowColor
: AppColors.mainColor, : AppColors.mainColor,
), ),
child: Text(logic.getKeyEffective(keyInfo), child: Text(logic.getKeyEffective(keyInfo),
style: TextStyle(fontSize: 18.sp, color: Colors.white) style: TextStyle(fontSize: 18.sp, color: Colors.white)
// child: Text(logic.compareTimeIsOvertime(keyInfo.endDate!) ? "已过期" : "${logic.compareTimeGetDaysFromNow(keyInfo.endDate!)}", style: TextStyle(fontSize: 18.sp, color: Colors.white) // child: Text(logic.compareTimeIsOvertime(keyInfo.endDate!) ? "已过期" : "${logic.compareTimeGetDaysFromNow(keyInfo.endDate!)}", style: TextStyle(fontSize: 18.sp, color: Colors.white)
), ),
), ),
], ],
)), )),
@ -259,7 +259,11 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
children: <Widget>[ children: <Widget>[
SizedBox(width: 30.w), SizedBox(width: 30.w),
Text( Text(
"${logic.getUseKeyTypeStr(keyInfo.startDate, keyInfo.endDate, keyInfo.keyType)}/${keyInfo.isLockOwner == 1 ? '超级管理员'.tr : (keyInfo.keyRight == 1 ? "授权管理员".tr : "普通用户".tr)}", "${logic.getUseKeyTypeStr(keyInfo.startDate, keyInfo.endDate,
keyInfo.keyType)}/${keyInfo.isLockOwner == 1
? '超级管理员'.tr
: (keyInfo.keyRight == 1 ? "授权管理员".tr : "普通用户"
.tr)}",
style: TextStyle( style: TextStyle(
fontSize: 18.sp, color: AppColors.darkGrayTextColor), fontSize: 18.sp, color: AppColors.darkGrayTextColor),
), ),
@ -282,9 +286,14 @@ class _LockListPageState extends State<LockListPage> with RouteAware {
@override @override
void dispose() { void dispose() {
Get.delete<LockListLogic>();
/// ///
AppRouteObserver().routeObserver.unsubscribe(this); AppRouteObserver().routeObserver.unsubscribe(this);
super.dispose(); super
.
dispose
(
);
} }
/// ///

View File

@ -344,6 +344,7 @@ class _StarLockMainPageState extends State<StarLockMainPage>
@override @override
void dispose() { void dispose() {
super.dispose(); super.dispose();
Get.delete<LockMainLogic>();
_teamEvent.cancel(); _teamEvent.cancel();
} }

View File

@ -190,7 +190,7 @@ class JverifyOneClickLoginManage {
uiConfig.numberColor = AppColors.mainColor.value; uiConfig.numberColor = AppColors.mainColor.value;
uiConfig.numberSize = 18; uiConfig.numberSize = 18;
uiConfig.sloganOffsetY = isiOS ? 10 : 300; uiConfig.sloganOffsetY = isiOS ? 10 : 280;
uiConfig.sloganVerticalLayoutItem = JVIOSLayoutItem.ItemNumber; uiConfig.sloganVerticalLayoutItem = JVIOSLayoutItem.ItemNumber;
uiConfig.sloganTextColor = Colors.black.value; uiConfig.sloganTextColor = Colors.black.value;
uiConfig.sloganTextSize = 15; uiConfig.sloganTextSize = 15;
@ -204,18 +204,18 @@ class JverifyOneClickLoginManage {
uiConfig.logBtnOffsetY = isiOS ? 30 : 330; uiConfig.logBtnOffsetY = isiOS ? 30 : 330;
uiConfig.logBtnVerticalLayoutItem = JVIOSLayoutItem.ItemSlogan; uiConfig.logBtnVerticalLayoutItem = JVIOSLayoutItem.ItemSlogan;
uiConfig.logBtnText = '一键登录'.tr; uiConfig.logBtnText = '一键登录'.tr;
uiConfig.logBtnTextColor = AppColors.mainColor.value; uiConfig.logBtnTextColor = Colors.white.value;
uiConfig.logBtnTextSize = 16; uiConfig.logBtnTextSize = 16;
print('----${F.loginBtnImagePrefix}_login_btn_normal-----');
uiConfig.logBtnBackgroundPath =
'${F.loginBtnImagePrefix}_login_btn_normal';
if (isiOS) { if (isiOS) {
uiConfig.logBtnTextColor = Colors.white.value;
uiConfig.loginBtnNormalImage = uiConfig.loginBtnNormalImage =
'${F.loginBtnImagePrefix}_login_btn_normal'; // '${F.loginBtnImagePrefix}_login_btn_normal'; //
uiConfig.loginBtnPressedImage = uiConfig.loginBtnPressedImage =
'${F.loginBtnImagePrefix}_login_btn_press'; // '${F.loginBtnImagePrefix}_login_btn_press'; //
uiConfig.loginBtnUnableImage = uiConfig.loginBtnUnableImage =
'${F.loginBtnImagePrefix}_login_btn_normal'; // '${F.loginBtnImagePrefix}_login_btn_normal'; //
uiConfig.logBtnBackgroundPath =
'${F.loginBtnImagePrefix}_login_btn_normal';
} }
// uiConfig.logBtnTextBold = true; // uiConfig.logBtnTextBold = true;
@ -224,10 +224,8 @@ class JverifyOneClickLoginManage {
uiConfig.privacyState = false; // uiConfig.privacyState = false; //
uiConfig.privacyCheckboxSize = 22; uiConfig.privacyCheckboxSize = 22;
if (isiOS) { uiConfig.checkedImgPath = 'check'; //
uiConfig.checkedImgPath = 'check'; // uiConfig.uncheckedImgPath = 'uncheck'; //
uiConfig.uncheckedImgPath = 'uncheck'; //
}
uiConfig.privacyCheckboxInCenter = true; uiConfig.privacyCheckboxInCenter = true;
uiConfig.privacyCheckboxHidden = false; uiConfig.privacyCheckboxHidden = false;

View File

@ -154,6 +154,7 @@ class Storage {
static Future<void> clearAll() async { static Future<void> clearAll() async {
final SharedPreferences sp = await SharedPreferences.getInstance(); final SharedPreferences sp = await SharedPreferences.getInstance();
// sp.clear(); // sp.clear();
sp.remove(saveLockMainListData);
sp.remove(saveUserLoginData); sp.remove(saveUserLoginData);
// //
//退 //退

View File

@ -1017,10 +1017,10 @@ packages:
dependency: "direct main" dependency: "direct main"
description: description:
name: jverify name: jverify
sha256: "26d1667d8c71403b77a2620a8c618625f8b4bfc950dac285b8f35ebc5e60fa5a" sha256: "720384c7dedeb48a64bad9d403cbd76a90c298bbdab91c738913912c81bfa21f"
url: "https://pub.dev" url: "https://pub.dev"
source: hosted source: hosted
version: "3.0.0" version: "3.0.5"
leak_tracker: leak_tracker:
dependency: transitive dependency: transitive
description: description:

View File

@ -253,7 +253,7 @@ dependencies:
flutter_bugly: ^1.0.2 flutter_bugly: ^1.0.2
open_filex: ^4.4.0 open_filex: ^4.4.0
jverify: 3.0.0 jverify: 3.0.5
#<cn> #<cn>
umeng_common_sdk: 1.2.8 umeng_common_sdk: 1.2.8
#</cn> #</cn>