application rejetée.Comment suivre l'abonnement sans renouvellement de l'user

J'ai développé une application pour le magazine en ligne avec un type d'abonnement non renouvelable.

Apple Developer Guide dire:

"il n'est pas approprié de suivre l'abonnement en utilisant l'UDID ou l'identifiant Apple Store.L'abonnement doit être suivi avec un server externe que vous devez fournir afin de fournir un abonnement à plusieurs appareils.En outre, gardez à l'esprit qu'il n'est pas approprié forcer l'logging de l'user à satisfaire à cette exigence, cet logging doit être facultatif. "

et j'ai récemment eu mon application rejetée par Apple pour ces raisons:

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 

alors … comment puis-je TRACK users et abonnement user sur mon server afin d'atsortingbuer le bon jour d'expiration pour les magazines? comme Apple dit ici https://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/APIOverview/OverviewoftheStoreKitAPI.html (dans le model de produit du server)

Je pense que j'avais rejeté mon application parce que je force l'user à mettre un e-mail valide sur mon server afin de suivre son abonnement.

Je suis sûr que quelqu'un est entré dans ce .. avez-vous eu les mêmes problèmes?

Vous pourriez essayer cette approche:

Lors de la première exécution, l'application s'enregistre auprès de votre server et récupère un single_token. Stockez-le sur le server et le client.
Lors de chaque achat, envoyez à votre server le message unique_token et stockez l'association entre unique_token et le produit acheté. Si l'user s'enregistre auprès de votre service (login & pass), envoyez également le message unique_token et associez directement l'identifiant du produit à l'user.

Lorsque vous concevez votre database, gardez à l'esprit qu'un user peut acheter 2 produits différents sur 2 appareils différents, s'save sur l'un d'eux et se connecter sur l'autre.

Avantages:

  • L'inscription n'est pas obligatoire.
  • Vous n'avez pas besoin d'utiliser UDID.

Les inconvénients:

  • Bien plus complexe. (thx Apple)
  • Si un user supprime l'application sans s'inscrire, tous les achats sont perdus. Cependant, certaines solutions de contournement peuvent être possibles (ex soumettre au server également l'adresse MAC de l'interface WiFi / Bluetooth [Je n'ai aucune idée si une api privée est nécessaire ou c'est encore une autre directive Apple])