refactor: 拆分主页与公共组件,扫码登录改走 WinHTTP

- 抽出 lib/core 的日期/JSON 工具,收敛各页重复解析
- 主页与音乐风险页拆成组件,风险功能共用一套运行框架
- 修复设置页作为主页页签保存时弹掉根路由导致的黑屏
- 登录对齐 Astral aimedb 协议:84 位二维码校验、签名与请求头修正,
  补 GlobalSign 中间证书;Windows 改用 WinHTTP 绕过服务端对
  BoringSSL 的 TLS 指纹拦截(证书校验保持开启)
- 补开发预览数据与测试
This commit is contained in:
Bad0RANG3 committed 2026-10-25 15:51:10 +08:00
1 parent 0cb5320290
commit e9357f5969
55 files changed
+4387 -3392

No files matched your search

+47
View File
@@ -0,0 +1,47 @@
import 'package:flutter/material.dart';
import '../../config/strings.dart';
import '../../models/user_preview.dart';
import 'home_common.dart';
class PreviewGameInfoCard extends StatelessWidget {
final UserPreviewDataBean preview;
const PreviewGameInfoCard({super.key, required this.preview});
@override
Widget build(BuildContext context) {
return HomeSectionCard(
title: AppStrings.gameInfo,
rows: [
(AppStrings.lastGame, preview.lastGameId),
(AppStrings.lastPlay, preview.lastPlayDate),
(AppStrings.lastLogin, preview.lastLoginDate),
(AppStrings.romVersion, preview.lastRomVersion),
(AppStrings.dataVersion, preview.lastDataVersion),
],
);
}
}
class PreviewStatusCard extends StatelessWidget {
final UserPreviewDataBean preview;
const PreviewStatusCard({super.key, required this.preview});
@override
Widget build(BuildContext context) {
return HomeStatusCard(
chips: [
HomeStatusChip(AppStrings.netMember, preview.isNetMember),
HomeStatusChip(AppStrings.inherit, preview.isInherit),
HomeStatusChip(
AppStrings.banState,
preview.banState == 0,
trueText: AppStrings.clean,
falseText: '已封禁 (${preview.banState})',
),
],
);
}
}