我正在开发一个应用程序,它将从网络服务器向用户提供数据,但前提是他们已经购买了应用内购买订阅。我了解IAP的基础知识,但我如何安全地确保服务器上的数据只能由应用程序访问,并且只有在购买了订阅的情况下?我不想让用户设置帐户,我只想安全地授权应用/购买。
提前致谢:)
答案 0 :(得分:3)
我也将使用IAP订阅模式。
AFAIK,您不应使用手机的IMEI等唯一的手机识别码来识别服务器上的用户。根据Apple文档,您必须提供一种方法,以便用户可以在多个设备上恢复其订阅!
此外,调用 SKPaymentQueue 的 restoreCompletedTransactions 将恢复仅非消费品!此方法不支持订阅。
请参阅以下链接:
http://developer.apple.com/library/ios/#technotes/tn2009/tn2259.html(“常见问题解答”,第10节)
iPhone - How to recognize the iTunes user of my app
我知道的唯一方法是使用登录名/密码来识别Web服务器上的用户,但这可能非常难看...... 但是,如果有人知道另一种方式,他能描述一下他的解决方案吗?
答案 1 :(得分:1)
您应该将商店收据上传到您的服务器,以便能够在Apple的网站上查看它们。并且,根据请求,您应该上传电话标识符。当然,存储在数据库中的某个位置。毕竟,您将获得有关哪个电话ID可以访问订阅的信息。 而且,当您从服务器请求订阅相关信息时,您将能够检查谁有访问权限(通过电话ID)以及谁没有。