在我的应用程序中,我附加了一个现有的SQLite数据库。开始时,它被复制到手机,然后被使用。我知道如何检查这个数据库是否已被复制,但我想检查手机上的数据库是否与APK中存储的数据库相同。有什么方法可以比较它们吗?我想以编程方式做到这一点。比较Android上的SQLite数据库
原始数据库存储在assets
文件夹中。
在我的应用程序中,我附加了一个现有的SQLite数据库。开始时,它被复制到手机,然后被使用。我知道如何检查这个数据库是否已被复制,但我想检查手机上的数据库是否与APK中存储的数据库相同。有什么方法可以比较它们吗?我想以编程方式做到这一点。比较Android上的SQLite数据库
原始数据库存储在assets
文件夹中。
如果你有一个根深蒂固的手机,那么你可以观看它的细节。但如果你的手机没有植根,那么你将无法看到它。
如果您已将应用程序复制到手机中,那么它肯定会起作用。
所以结论是,如果你有一个根深蒂固的手机,那么你将能够看到和比较,如果可能的话尝试比较它的大小或安装它的时间。
如果你已经附加了一个数据库与你的APK,你成功地复制到你的手机,这意味着你有你的旧数据库复制。所以我认为没有必要比较。如果你想比较然后比较所有记录表。
,如果你要记住,你的数据库已经复制然后使用份额preferences.Save一个标志,一旦copied.Then真检查它的价值
更新
要列出所有表
二select name from sqlite_master where type = 'table'
如果这两个数据的基础上再有同台比较这些对应的表
尝试COMPA记录重新以字节为单位的文件大小? – idiottiger 2012-04-06 06:27:46
是的,这是一个好主意。我怎样才能获得这些文件的大小?原始位于我的APK的'assets'文件夹中,并复制到'/ data/data/my.package/databases /'中。 – Roman 2012-04-06 06:57:26
用于assert db:'context.getAssets()。open(“assert_db”)。available();''和'new File(“/ data/...”).length();'实际为db。 – idiottiger 2012-04-06 07:02:59