【发布时间】:2019-06-06 11:56:20
【问题描述】:
关于如何从 csv、另一个数据库等导入内部数据库中的数据有很多文章。但我还没有找到任何人解释如何导出 Flutter 数据库。
目标是为每部手机创建备份。 (所以我需要了解它的位置以创建备份)
【问题讨论】:
-
你在用flutter包 sqflite 吗?
-
是的,我就是这么用的
关于如何从 csv、另一个数据库等导入内部数据库中的数据有很多文章。但我还没有找到任何人解释如何导出 Flutter 数据库。
目标是为每部手机创建备份。 (所以我需要了解它的位置以创建备份)
【问题讨论】:
【讨论】:
如果你使用Sqlite创建数据库:
第1步:创建数据库时,为它设置一个目录,你可以像这样使用path_provider:
var dir = await getApplicationDocumentsDirectory();
_dbPath = dir.path + '/$dbName';
所以现在你知道它是什么目录和路径了。
第2步:然后使用flutter_archive插件压缩文件(这会将文件压缩到一个目录中,即你的数据库);
第 3 步:使用 flutter_email_sender 通过电子邮件发送,如下所示:
final email = Email(
body: 'content',
subject: 'content',
recipients: ['email'],
cc: ['email'],
attachmentPaths: [exportPath],
isHTML: false,
);
await FlutterEmailSender.send(email);
您需要提供exportPath,即您设置的zip文件路径。
它对我们有用,希望这对其他人有帮助!
【讨论】:
通常在 Android 上,数据库存储在 /data/data/your.app.signature.here/databases/。 但我不知道这在 Flutter 应用上是否有所不同。
希望对您有所帮助。
【讨论】: