我有一个iOS应用程序(和一个网站)。应该有一个高级用户选项,即如果用户是高级用户,则用户可以访问特殊内容。用户可以每月或每年成为高级用户。
第一个问题 - Apple是否允许设施在网站上以及通过InAppPurchase提供相同的产品(遵循Apple的规则 - 应用程序中没有任何链接或指示相同的可以在网站上购买)。 因此,如果用户通过InAppPurchase购买高级帐户,他/她可以登录网站以及高级用户,反之亦然。
如果允许,最好是使用耗材类型的产品实现高级用户功能,让服务器管理所有内容还是使用不可续订的订阅?
消耗品方法 执行InAppPurchase然后向服务器发送请求,说明当前用户是一个月/年的高级用户,然后每次应用启动/用户登录时,调用API以检查当前用户是否是高级用户或不
要处理的棘手案件是 1.当用户正在使用应用程序时,他/她的高级用户状态到期。 2.如果在InAppPurchase完成后网络熄灭,并且对服务器的请求不完整。
不可续订的订阅方式 我不确定这是如何工作的,但我猜它会与消费品类似。
这两种方法中的哪一种更适合恢复以前的交易?
答案 0 :(得分:5)
棘手的案件实际上并不那么棘手。对于第一个,请让应用程序从服务器检索到期时间(您在购买订阅后确实保存了吗?;-))并且当用户尝试使用高级功能时执行检查以确保他仍然被允许。第二步,将购买保存在手机中,然后将收据发送到服务器进行验证。只有当服务器可以访问并且收据有效时,才从电话中删除它。否则,您可以在启动时检查手机中是否有未发送的收据,您应该重新发送到服务器进行验证。