应用程序被拒绝,以跟踪用户不更新订阅

我在“在线”杂志上开发了一个应用程序,用于不更新订阅types。

苹果开发者指南说:

“使用UDID或Apple Store ID来跟踪订阅是不合适的, 订阅应该使用外部服务器进行跟踪 ,您应该提供这个外部服务器来提供订阅多个设备的function,另外,请记住它并不合适强制用户注册,以满足这一要求;这种用户注册必须是可选的。“

而我最近因为这些原因而拒绝了我的应用程序:

11.6: Content subscriptions using IAP must last a minimum of 7 days and be available to the user from all of their iOS devices 17.2: Apps that require users to share personal information, such as email address and date of birth, in order to function will be rejected 

所以.. 我如何才能跟踪用户和用户订阅我的服务器上 ,以便为杂志指定正确的到期日? 像苹果在这里说的https://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/APIOverview/OverviewoftheStoreKitAPI.html (进入服务器产品模型)

我想我已经拒绝了我的应用程序,因为我强迫用户把一个有效的电子邮件在我的服务器上,以追踪他的订阅。

我相信有人进入那个..所有人都有同样的问题?

你可以尝试这种方法:

在第一次运行,应用程序注册您的服务器,并取回一个unique_token。 将其存储在服务器和客户端。
在每次购买时向您的服务器提交unique_token,并存储unique_token和购买产品之间的关联。 如果用户注册您的服务(login和通行证),还发送unique_token并将产品ID直接关联到用户。

在devise数据库时,请记住,用户可以在两种不同的设备上购买两种不同的产品,然后在其中一个上注册,然后在另一个上login。

优点:

  • 注册不是强制性的。
  • 你不需要使用UDID。

缺点:

  • 方式更复杂。 (thx苹果)
  • 如果用户在没有注册所有购买的情况下删除应用程序,则会丢失。 然而,一些解决方法可能是可能的(例如,提交给服务器的WiFi /蓝牙接口的MAC地址[我不知道是否需要任何私人API或它是苹果的指导方针])