Achat in-app, plusieurs abonnements à renouvellement automatique ayant des durées différentes

Une question concernant les abonnements à renouvellement automatique des achats via l'application:

Je ne sais pas comment gérer le cas où un user achète plusieurs abonnements de durées différentes. Il semblerait qu'Apple reconnaîtra si l'user a déjà acheté une SKU donnée (basée sur l'ID de produit) et empêchera un nouvel achat (mon application reçoit un événement de transaction échouée dans ce cas), mais si j'offre le même contenu en utilisant différents ID de produit ayant des durées différentes, l'user peut potentiellement acheter deux fois ou plus.

Même si je cache les options d'achat supplémentaires une fois que l'user a souscrit une seule fois, il pourrait potentiellement acheter un autre abonnement sur un autre appareil, et cet achat pourrait / pourrait finalement être restauré sur l'autre appareil déjà souscrit.

Suis-je censé suivre les abonnements achetés par ID de transaction et ID de produit, et calculer une date d'expiration ultime? Cela semble compliqué.

Avant de poursuivre, consultez les commentaires sur ce post lié pour savoir pourquoi il peut être judicieux d'utiliser des abonnements à renouvellement automatique.

Arrête-moi si tu as déjà entendu ça.
Lorsque vous choisissez Auto-Renewable Subscriptions dans iTunes Connect, vous avez la possibilité d'append plusieurs durées, avec différents ID de produit à une même Family abonnements. Apple ne permettra pas à un user d'acheter plusieurs durées d'abonnement qui se chevauchent au sein d'une même famille. (Si vous utilisez plusieurs familles dans votre application, veuillez expliquer le raisonnement, afin que je puisse vous donner des conseils en fonction de cela).

En fait, Apple ne laissera pas l'user emstackr différentes durées d'abonnement au sein d'une même famille.

Voici un exemple.
Je (en tant qu'user) download l'application hypothétique Acme et m'abonner avec un abonnement d'un mois. Si je ne fais rien, mon abonnement sera automatiquement renouvelé à la fin de la période avec un autre abonnement d'un mois. Etc.

Mais à la place, je rentre et achète un abonnement de 6 mois. Apple me dira (avec une alerte) que mon abonnement de six mois débutera à la fin de mon abonnement actuel d'un mois, et j'aimerais continuer. Si je dis oui, Apple en prendra note, mais ils ne me factureront pas avant la fin de mon 1 mois actuel.

Maintenant, si je rentre et achète un abonnement d'un an, Apple répondra à nouveau avec une alerte me disant que cela commencera à la fin de mon abonnement actuel d'un mois. Il ne sera pas ajouté à l'abonnement de 6 mois à venir. Il va le replace.

En résumé
Ainsi, un user ne peut avoir qu'un seul Abonnement actuel et un Abonnement à venir (au sein d'une même family .) Si vous créez plusieurs familles d'abonnements, elles peuvent exister simultanément et vous perdez cette protection.

Si, en tant que développeur, vous souhaitez étendre, raccourcir, annuler ou emstackr manuellement les abonnements, vous devez le faire avec des abonnements non renouvelés. Et si vous lisez le lien que j'ai posté en haut, vous réaliserez qu'Apple peut vous forcer à le faire.

essayez d'utiliser MKStoreKit 4, il prend en charge les abonnements renouvelables automatiquement http://blog.mugunthkumar.com/coding/mkstorekit-4-0-supporting-auto-renewable-subscriptions/