我正在尝试使用Sugar ORM及其扩展来进行数据库加密。我目前正在使用清单元标记指定加密密钥:
<meta-data
android:name="ENCRYPTION_KEY"
android:value="<key>" />
这是存储密钥的安全方式吗,因为我将它存储在清单中?如果没有,我可以以某种方式从app内部设置programaticaly吗?
编辑:我尝试了this指南,但它不起作用,数据库未加密。
答案 0 :(得分:0)
我终于找到了解决方案。我使用了上面Github链接的示例项目并将其提取到磁盘上。我使用Android studio将其转换为Gradle风格的项目。我将所有代码复制到这个新项目中,并完成了迁移所需的所有重构。之后,如果您有旧的应用程序实例,则需要清除数据,并且神奇地工作。这似乎是配置问题,缺乏关于这个项目分支的信息。
编辑:另外,如果你想动态注入密钥,你需要覆盖几个类并手动注入它。