ios - 如何防止多个用户在应用内购买时使用相同的 Apple ID

标签 ios xamarin in-app-purchase subscription apple-id

我正在开发跨平台移动应用程序并使用 InAppBiling Plugin对于我的应用程序的应用程序内购买功能,但我对 iOS 上的以下情况有疑问:

场景:

  • 用户 A 使用他的应用凭据和他的 Apple ID 获得订阅。
  • 用户 B 使用用户 A 的设备并使用用户 B 的应用凭据登录,但使用用户 A 的 Apple ID 购买订阅。

目前,它允许用户 B 购买该商品,但它表示该用户已订阅并请求修改此订阅的权限。

我的问题是如何防止用户B修改用户A的订阅?在创建收据之前我找不到任何解决方案。我不想让用户 B 修改用户 A 的订阅。我想通知用户 B 使用不同的 Apple ID 继续购买订阅。

提前致谢

最佳答案

您的问题与this one有关

您必须拥有作为订阅真实来源的后端。

您提供的情况如下所示:

  1. 用户 A 使用他的应用凭据和他的 Apple ID 获得订阅。
  2. 您将收据发送到您的后端以按照描述的方式对其进行验证 here
  3. 您的服务器存储有关订阅的信息并将其链接到用户 A
  4. 用户 B 使用用户 A 的设备并使用用户 B 的应用凭据登录,但使用用户 A 的 Apple ID 购买订阅。
  5. 按照第 2 点将收据发送到后端
  6. 您的后端响应此订阅已与用户 A 连接

编辑:

apple docs 中所述:

Send a copy of the receipt to your server along with some kind of credentials or identifier so you can keep track of which receipts belong to a particular user. For example, let users identify themselves to your server with an email or user name, plus a password.

关于ios - 如何防止多个用户在应用内购买时使用相同的 Apple ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50593882/

相关文章:

ios - 在应用程序中附加电子邮件?

ios - 如何在 AppDelegate 中将 View Controller 设置为 Root View Controller

iOS使用socket连接发送数据

iphone - 如何在 UITextfield 验证中避免特殊字符(@、#、& 等)

c# - 动画 TopMargin 的 ObjectAnimator 代理找不到设置/ getter

c# - xamarin 跨平台 Canvas

安卓xamarin apk

iphone - 如果更新了包含应用内购买产品的应用,会发生什么情况?

ios - 应用内购买未获得任何产品

ios - 我是否需要为尚未获得苹果批准的现有项目更新 Xcode 9.0 和 IOS 11?