我试图允许用户在我的应用中试用一些东西,但只尝试一次。即使在用户删除应用程序之后我如何存储此信息,以便用户无法重新安装应用程序以再次尝试试用?
答案 0 :(得分:3)
您可以使用钥匙串,因为即使从设备中删除了应用程序,也不会删除钥匙串项目。 (可以使用“安全擦除”删除它,如下所述:https://stackoverflow.com/a/3885110/1187415,我不确定。)
答案 1 :(得分:0)
不幸的是,App Store的工作方式和沙盒的工作方式的组合阻止了这种情况。但是,您可以让用户更多地困难多次执行此操作。只需在NSUserDefaults中放置一个BOOL,说用户已完成该操作,并拒绝再次执行此操作。当然,用户可以删除应用程序(从而删除NSUserDefaults),重新安装它,并再次执行该操作 - 一次。但那将是很多工作,所以这是你的威慑力。
答案 2 :(得分:0)
如果您的应用程序使用身份验证,则会发生这种情况。解决方案是这样的,将一个身份验证页面作为应用程序的起点。用户登录后将信息发送到您的服务器。下次甚至用户删除您的应用程序并重新安装也无法使用它,在您的Web服务器响应将被更改。
app - >登录 - >服务器 - >响应 - >打开应用 - >将响应存储在本地持久性中,每次用户重新安装应用程序时都会发生这种情况。让我们假设您的跟踪模块将通过单击按钮打开,一旦单击按钮放置检查并从您的本地持久性获取信息并与您的错误消息的用户亲密。
希望这会帮助你了解服务器 - 客户端模型。祝你好运。
注意:用户删除您的应用后,系统会删除与您的应用相关的所有数据。