gpt4 book ai didi

复制后sqlite Db的Android MD5校验和发生变化

转载 作者:行者123 更新时间:2023-11-29 20:52:39 25 4
gpt4 key购买 nike

我提供了一个与应用程序打包在一起的 SQLite 数据库,它在第一次启动时被复制到/data/data/文件夹。此 Db 的内容仅供阅读,永远不会更改。

如果 Db 被修改,它应该随下一个 App Update 一起提供。因此,我想实现一个程序,我正在考虑将打包 Db 的 MD5 校验和与设备上 Db 的校验和进行比较,如果发现不同则复制。

但是...将 Db 复制到设备后,校验和会立即发生变化!

有人可以解释这是否是预期的行为,还是我遗漏了什么?

如果这是预期的行为,那么比较 Dbs 的最佳方法是什么?

******* 更新 *******

我从设备中拉出复制的Db,看到系统在Db中添加了一个“android_metadata”表。所以很明显校验和不同。这回答了我的第一个问题。

第二个问题仍然悬而未决。

最佳答案

好的,所以解决方案是使用受支持的语言环境值预先创建“android_metadata”表。如果该表存在于 Db 中,系统不会重新创建或更改它。校验和比较工作完美!

一个万无一失的解决方案,正是我喜欢的方式!

关于复制后sqlite Db的Android MD5校验和发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28708149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com