我正在尝试构建一个使用虚拟币系统的iPhone应用程序。用户购买硬币然后在游戏中使用它们。如何跟踪他们使用的硬币数量。
如果我在本地存储信息,则不能有人进入并更改文件,然后更新硬币数量。是否可以在越狱手机上防止这种情况发生?
有没有办法在没有注册的情况下将数量的硬币存储在数据库中。
答案 0 :(得分:2)
如果我在本地存储信息,是否有人可以直接进入并更改文件然后增加硬币数量?
哦,但是他可以。
是否有可能在越狱手机上阻止这种情况?
不,不是真的。但是,如果没有越狱就无法做到(应用程序安装在iOS'文件系统的可编程访问的监禁根目录中,受限于/ var / mobile / Media库 - 从AppStore下载的应用程序安装在/ var / mobile / Applications) - 所以对于90%的用户来说,你都是安全的。
有没有办法在没有注册的情况下将数量的硬币存储在数据库中?
您可以使用应用内购买或仅使用您的服务器自动注册其设备ID(序列号,MAC地址,从它们生成的哈希,类似于现已弃用的UDID,或只是一个简单的UUID)在线存储“钱”。在这两种情况下,建议您使用自己的服务器验证每笔交易,否则可以调整(字面意思;谷歌iAPCracker)。