android - 将重要数据存储在内部存储器中

标签 android

我正在尝试了解在 Android 中存储敏感数据的最佳方式。在我的应用程序中,我想插入一个带有一些硬币的经典应用程序内购买模型。我的问题是我不确定如何正确实现。 最初的想法是简单地使用我的 firebase 数据库,存储每个用户的硬币数量,并在每次应用程序启动时获取数据。这样我可以很容易地检测到一些不当的使用,但我的用户被迫使用互联网来玩。 查看文档,我发现 this .这可以解决吗?我可以在内部存储中保存硬币数量,也许使用某种类型的加密,以避免 root 用户修改文件吗?然后当互联网打开时,我可以用数据库中的变量仔细检查本地存储的变量。 谢谢

最佳答案

这不是一项“容易”的任务。 从技术上讲,您可以创建一个 SecretKey 并加密数据,因此任何普通用户都无法复制。如果您担心的是 root 用户,那您就有点不走运了,因为他可以在您的应用程序读取/写入该值时连接到您的应用程序。

但在线存储本身并不是解决方案。你必须回答这样的问题:“你信任任何服务器输入吗”? “如何确保刚刚支付的币被添加”?

你看过Google Play billing了吗? ?

它提供了确定是否有人付款的安全方法。 这需要在线。

关于android - 将重要数据存储在内部存储器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52699538/

相关文章:

android - 在 ListView、数据库、android 中更改字体颜色

android - 在 Eclipse 中找不到 AVD 或 SDK 管理器

java - 在 Android 中使用 token 的 Stripe 卡 ID

android - 在 LibGDX 的纹理上渲染视频

java - 如何使用正则表达式通过服务器拆分响应

android - 当网络关闭并重新打开时,FFmpegMediaPlayer 停止

java - 传递程序生成的按钮的重复属性

Android picasso 自动旋转图像

java - 无法解析 R.array.items 中的 "array"(android studio)

android - 能不能避免在View名称前使用 "R.id"?