问题描述
一切正常,直到我重新启动应用程序(关闭应用程序并打开它)并且看不到以前保存的数据但如果我选中框状态它已打开和空。我做错了什么吗?
- 在真机小米红米4A上运行(实际出现问题 也适用于 Iphone 设备)
- 在 Mac M1 上工作
- Flutter(通道稳定,2.2.2,在 macOS 11.2 20D64 darwin-arm 上, 语言环境 ru)
- 我在 github network security config 中发现了“问题”,但没有任何用处
main.dart
void main() async {
// init hive
WidgetsFlutterBinding.ensureInitialized();
await lds.init();
// init app
runApp(MyApp());
}
hive 初始化文件
Future<void> init() async {
final appDocumentDirectory = await path.getApplicationSupportDirectory();
Hive.init(appDocumentDirectory.path);
// registering entities
Hive.registeradapter(ItemmodelAdapter());
}
保存和加载函数
class ItemLocalDataSource {
static const String Box_ITEMS = 'item-models';
Future<List<Itemmodel>> getLocalItems() async {
await Hive.openBox(Box_ITEMS);
final Box = Hive.Box(Box_ITEMS);
final items = Box.get(0) as List<Itemmodel>;
return items;
}
Future<void> setLocalItems(List<Itemmodel> items) async {
await Hive.openBox(Box_ITEMS);
final Box = Hive.Box(Box_ITEMS);
Box.put(0,items);
print('saved $items');
}
}
我在 pubspec.yaml 中使用的包版本
# hive (local data storage)
hive: ^1.4.4+1
dev_dependencies:
Flutter_test:
sdk: Flutter
# hive adapter generator
hive_generator: ^0.8.2
# build runner
build_runner:
解决方法
你处理了初始化的方法吗?