fetchCloudTemplates method

Future<List<KoiTemplateManifest>> fetchCloudTemplates()

Implementation

Future<List<KoiTemplateManifest>> fetchCloudTemplates() async {
  await Future.delayed(const Duration(milliseconds: 800)); // 模拟网络延迟
  final prefs = await SharedPreferences.getInstance();
  final jsonStringList = prefs.getStringList(_kCloudTemplatesKey);

  if (jsonStringList == null || jsonStringList.isEmpty) {
    return [];
  }

  try {
    return jsonStringList.map((str) {
      final map = jsonDecode(str) as Map<String, dynamic>;
      return KoiTemplateManifest.fromJson(map);
    }).toList();
  } catch (e) {
    debugPrint('Failed to parse cloud templates: $e');
    return [];
  }
}