现在的问题比较大,因为metadata的引入导致原有的部分播放进度信息推送错误

This commit is contained in:
2026-08-23 20:29:31 +08:00
parent 9a60441e04
commit d593ce05a1
9 changed files with 203 additions and 167 deletions
-9
View File
@@ -1,35 +1,26 @@
// lib/metadata/metadata_cache.dart
import 'metadata_model.dart';
/// 本地缓存接口(先用内存缓存,后续升级为 SQLite)
class MetadataCache {
// 内存缓存:Map<fileId, FinalMetadata>
final Map<String, FinalMetadata> _cache = {};
/// 获取缓存
Future<FinalMetadata?> get(String fileId) async {
return _cache[fileId];
}
/// 存入缓存
Future<void> put(String fileId, FinalMetadata metadata) async {
_cache[fileId] = metadata;
}
/// 更新缓存(同 put
Future<void> update(String fileId, FinalMetadata metadata) async {
_cache[fileId] = metadata;
}
/// 根据 artist 获取历史记录(用于证据收集)
/// 实际项目中需要从数据库查询,目前返回空列表
Future<List<Map<String, dynamic>>> getHistory(String artist,
{int limit = 10}) async {
// TODO: 从 SQLite 查询
return [];
}
/// 清空缓存
Future<void> clear() async {
_cache.clear();
}