在我的应用程序中,我附加了一个现有的 SQLite 数据库。开始时它被复制到手机然后被使用。我知道如何检查该数据库是否已被复制,但我想检查手机上的数据库是否与存储在 APK 中的相同。有什么方法可以比较它们吗?我想以编程方式做到这一点。
原始数据库存储在assets
文件夹中。
如果您有一部已植根的手机,那么您可以观看它的详细信息。但是如果您的手机没有root,那么您将无法看到它。
另一件事是,如果您已将应用程序复制到手机中,那么它肯定会起作用。
所以结论是,如果你有一个 Rooted 电话,那么你将能够查看和比较,如果可能的话,尝试比较它的大小或安装它的时间。
如果您在 APK 中附加了一个数据库,并且您成功复制到您的手机,这意味着您复制了旧数据库。所以我认为无需比较。如果您想比较,请比较表中的所有记录。
其次,如果您想记住您的数据库已被复制,则在共享首选项中使用一个标志。复制后保存为真。然后检查其值
更新
列出所有表
select name from sqlite_master where type = 'table'
如果两个数据库都有相同的表,则比较这些对应表的记录