import 'dart:io'; import 'package:hive/hive.dart'; import 'package:hive_flutter/hive_flutter.dart'; part 'dbmanager.g.dart'; @HiveType(typeId: 0) class LocalImageInfo extends HiveObject { @HiveField(0) String? localUrl; @HiveField(1) DateTime? date; // LocalImageInfo({required this.localUrl,required this.date}); } class DBManager { static late Box box; static Future initAdapter()async { await Hive.initFlutter(); Hive.registerAdapter(LocalImageInfoAdapter()); var downloadAlbums = await Hive.openBox('DownloadAlbums'); DBManager.box = downloadAlbums; } static addImg(String localFileName) { var item = LocalImageInfo() ..localUrl = localFileName ..date = DateTime.now(); DBManager.box.add(item); DBManager.box.flush(); } static List allImgs() { var lis = DBManager.box.values.toList(); return lis ; } static void deleteImg(LocalImageInfo item ) { DBManager.box.delete(item.key); DBManager.box.flush(); } }