2 Commits
Author SHA1 Message Date
beyondandClaude Opus 5 6e5c9fce95 全面安全加固 + UI一致性 + 功能修复 + 性能优化
安全修复:
- usesCleartextTraffic=false + network_security_config.xml (LAN例外)
- 备份规则排除数据库/SP/缓存 (backup_rules.xml, data_extraction_rules.xml)
- ProGuard Release移除 Log.d/Log.v
- EmbyRepository 日志脱敏 + API Key安全注释
- EmbyServer URL长度/主机名/端口验证

UI一致性:
- LumaDesignSystem 新增16个颜色令牌 + LumaBorders + 2个排版令牌
- 6个屏幕文件硬编码颜色统一到LumaColors
- 排版统一 17sp→18sp, 30sp→32sp, 34sp→32sp

功能修复:
- 首页MyMediaGrid点击导航到库列表
- 搜索齿轮图标导航到设置
- FavoritesAllScreen/HomeLibraryAllScreen 添加下拉刷新
- RecordsScreen 13+硬编码中文→stringResource() + 修复count bug
- 新增16个日历字符串(中英文)

性能优化:
- TMDB数据类添加@Immutable注解
- HomeContentCache添加LRU驱逐策略(最多3个快照)
- VideoPlayerScreen内部轮询从250ms降至500ms

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-06 16:43:25 +08:00
beyond 3670466a65 fix: 第一轮性能优化 — R8启用、协程泄漏修复、@Immutable注解、状态提取、并行化
- Release build 启用 R8/ProGuard + 新建 proguard-rules.pro
- MediaDetailScreen: MainScope → rememberCoroutineScope
- AppNavHost: openDetail/openHome lambda 记忆化
- VideoPlayerScreen: 提取 PlayerStatusBar 独立 Composable
- LibraryScreen: nowMillis 下沉到 ServerStatusLine 内部
- 8个核心数据类添加 @Immutable 注解
- TmdbCalendar: coroutineScope+async 并行化 season 请求
- SearchScreen: derivedStateOf 正确观察 SnapshotStateList
- HomeScreen: MediaPoster/ContinueWatchingPoster ImageRequest remember
- MediaDetailScreen: cast/recommendations/resources LazyRow 添加 key
- RecordsScreen: LaunchedEffect key 用 hashCode 替代 joinToString
2026-09-06 13:30:56 +08:00