团队,
我有一个带有大型SQLite数据库的Android应用程序这个数据花了我很多钱,我不想让任何人轻易拥有它。 这个数据库以databse.sqlite文件的形式出现在我身上,然后我发送到了APK资产。
无论如何在发货之前加密这个数据库然后在读取数据时解密?
P.S我搜索了很多,我的所有结果都指向我使用sqlcipher但这个lib不适用于运送的SQLite数据库文件。
答案 0 :(得分:1)
问题是您需要将密钥(或密钥的位置)存储在代码中的某个位置,并且对应用程序进行解码并不需要花费太多精力。不幸的是,您无法真正阻止任何人访问数据。你只能让它变得更难,但对于那些真正坚定的人来说,这仍然很容易。
最佳解决方案是将数据库存储在服务器上,并仅将用户实际需要的数据发送到设备。这样,您至少可以控制设备请求的数据。