sqlite 有没有办法在应用程序关闭时将数据保存在本地

6ioyuze2  于 2022-11-14  发布在  SQLite
关注(0)|答案(1)|浏览(241)

该应用程序与SQLite数据库一起工作,它显示资产中的数据非常好,即使当应用程序关闭这些数据仍然在那里,问题是当连接到服务器和加载数据时,它被保存并显示在应用程序中非常好,但只有当应用程序运行时,如果应用程序关闭了所有丢失的东西,并且我从一开始就找到了资产中已经存在的数据。即使应用程序关闭,我如何将从服务器加载的数据保存在本地数据库中?
下面是我的数据库初始化函数

Future<Database> initDb() async {
if (kIsWeb) {
  try {

  } catch (_) {}
  // Set web-specific directory Here
} else {
  Directory documentDirectory = await getApplicationDocumentsDirectory();
  String path = join(documentDirectory.path, "data_4us.db");

  // Load database from asset and copy
  ByteData data = await rootBundle.load(join('data', '4us.db'));
  List<int> bytes =
  data.buffer.asUint8List(data.offsetInBytes, data.lengthInBytes);

  // Save copied asset to documents
  await new File(path).writeAsBytes(bytes);

  var ourDb = await openDatabase(path);
  return ourDb;
} }
qij5mzcb

qij5mzcb1#

好了,伙计们,我想我解决了这个问题,我只是添加了这条if语句来检查数据库的存在

if (FileSystemEntity.typeSync(path) == FileSystemEntityType.notFound){ }

现在一切都好了。谢谢你。

相关问题