我正在构建基于订阅的cordova / phonegap移动应用程序,但我认为此问题也存在于本机应用程序中。
作为参考,这里有一些关于这个问题的讨论和部分解决方案,但它没有完全解决问题:
in-app purchase validation - validate purchase as per user
问题是让我们说用户A注册/登录该应用并进行基于购买的可续订订阅。收到回执,我在服务器端验证它,一切都很好。现在,用户A退出应用并注册/登录为新用户B.为用户B检索相同的收据,因为应用内购买属于用户的苹果ID,而A和B都使用相同的Apple ID 。我已经实现的另一篇文章中提供的部分解决方案是将所有收据验证及其应用程序用户ID存储在服务器端,每次IAP加载时检查与原始提交的用户ID相关联的用户ID收到并拒绝服务给用户B.
这有效,但只能阻止用户B访问付费功能。如果用户B也想订阅怎么办?当我尝试由用户B购买时,Apple正在回复您已经拥有有效订阅。 Apple对我的应用程序用户一无所知,因为它来自它认为已经订阅的Apple ID。因此,用户B被卡住,他无法订阅,并且他无法使用用户A的订阅功能。
有没有办法区分每个应用程序用户的购买/收据或者解决这个问题的方法?
由于