logo和名称替换
This commit is contained in:
@@ -6,7 +6,7 @@ import 'package:device_identity/device_identity.dart';
|
||||
import 'package:device_info_plus/device_info_plus.dart';
|
||||
import 'package:flutter/services.dart';
|
||||
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
|
||||
import 'package:hgmj/extension/extensions.dart';
|
||||
import 'package:wydj/extension/extensions.dart';
|
||||
import 'package:package_info_plus/package_info_plus.dart';
|
||||
import 'package:path_provider/path_provider.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
@@ -263,8 +263,8 @@ class DeviceInfoService {
|
||||
} catch (_) {}
|
||||
}
|
||||
if (_isInvalidId(raw)) raw = const Uuid().v4();
|
||||
// 业务规则:hgmj_ 前缀,去空格,限制 50 字符(日志系统约束)
|
||||
return 'hgmj_${raw.replaceAll(' ', '')}'.limit(50);
|
||||
// 业务规则:wydj_ 前缀,去空格,限制 50 字符(日志系统约束)
|
||||
return 'wydj_${raw.replaceAll(' ', '')}'.limit(50);
|
||||
}
|
||||
|
||||
/// 脏值检测:空 / 太短 / 全 0 / 已知脏值
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import 'package:hgmj/hj_utils/light_model.dart';
|
||||
import 'package:hgmj/hj_utils/store_keys.dart';
|
||||
import 'package:wydj/hj_utils/light_model.dart';
|
||||
import 'package:wydj/hj_utils/store_keys.dart';
|
||||
import 'package:uuid/uuid.dart';
|
||||
|
||||
/// 会话管理器 - 生成并维护统一的会话 ID (sid)
|
||||
@@ -44,7 +44,8 @@ class TrackSessionManager {
|
||||
/// 调用时机:AppLifecycleState.paused / inactive / detached
|
||||
Future<void> onAppPause() async {
|
||||
_backgroundedAt = DateTime.now();
|
||||
await lightKV.setInt(StoreKeys.TRACK_SESSION_BACKGROUND_TS, _backgroundedAt!.millisecondsSinceEpoch);
|
||||
await lightKV.setInt(StoreKeys.TRACK_SESSION_BACKGROUND_TS,
|
||||
_backgroundedAt!.millisecondsSinceEpoch);
|
||||
}
|
||||
|
||||
/// App 回到前台:后台停留超时或会话本身超时都换新 sid(规则2、3)
|
||||
@@ -63,11 +64,15 @@ class TrackSessionManager {
|
||||
_sid = (await lightKV.getString(StoreKeys.TRACK_SESSION_SID)) ?? '';
|
||||
|
||||
//键名沿用历史的 LAST_EVENT_TS,存的是会话创建时间
|
||||
final sessionTs = await lightKV.getInt(StoreKeys.TRACK_SESSION_LAST_EVENT_TS);
|
||||
if (sessionTs != null && sessionTs > 0) _sessionAt = DateTime.fromMillisecondsSinceEpoch(sessionTs);
|
||||
final sessionTs =
|
||||
await lightKV.getInt(StoreKeys.TRACK_SESSION_LAST_EVENT_TS);
|
||||
if (sessionTs != null && sessionTs > 0)
|
||||
_sessionAt = DateTime.fromMillisecondsSinceEpoch(sessionTs);
|
||||
|
||||
final backgroundTs = await lightKV.getInt(StoreKeys.TRACK_SESSION_BACKGROUND_TS);
|
||||
if (backgroundTs != null && backgroundTs > 0) _backgroundedAt = DateTime.fromMillisecondsSinceEpoch(backgroundTs);
|
||||
final backgroundTs =
|
||||
await lightKV.getInt(StoreKeys.TRACK_SESSION_BACKGROUND_TS);
|
||||
if (backgroundTs != null && backgroundTs > 0)
|
||||
_backgroundedAt = DateTime.fromMillisecondsSinceEpoch(backgroundTs);
|
||||
|
||||
if (_sid.isEmpty || _isExpired(_sessionAt)) _newSession();
|
||||
_inited = true;
|
||||
@@ -84,6 +89,7 @@ class TrackSessionManager {
|
||||
_sid = Uuid().v4().replaceAll('-', '');
|
||||
_sessionAt = DateTime.now();
|
||||
lightKV.setString(StoreKeys.TRACK_SESSION_SID, _sid);
|
||||
lightKV.setInt(StoreKeys.TRACK_SESSION_LAST_EVENT_TS, _sessionAt!.millisecondsSinceEpoch);
|
||||
lightKV.setInt(StoreKeys.TRACK_SESSION_LAST_EVENT_TS,
|
||||
_sessionAt!.millisecondsSinceEpoch);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user