Comment tester la composante" renouvellement " des abonnements auto-renew dans L'App Store D'iOS Sandbox?

les amis,

j'essaie de vérifier que les abonnements à renouvellement automatique sont effectivement renouvelés dans l'environnement du bac à sable. Tout d'abord, il semble que les abonnements à renouvellement automatique dans sandbox ne sont valides que pour 5 minutes. Du sens. Je pense que si j'attends cinq minutes, puis faire un autre appel à

https://sandbox.itunes.apple.com/verifyReceipt

avec mes données de réception, je devrais voir le renouvellement de l'abonnement avec une date d'expiration cinq minutes de plus.

malheureusement, ce n'est pas le cas. Tout ce que je vois c'est une réponse avec latest_expired_receipt_info et un statut de 21006, ce qui signifie "Ce reçu est valide mais l'abonnement a expiré" selon the Apple docs .

est-ce que quelqu'un peut me dire s'il est en mesure de tester le renouvellement automatique des abonnements de bout en bout, y compris cette composante de renouvellement? Ou dois-je me lancer cette application et croiser les doigts que prod va fonctionner comme annoncé?

alternativement, y a-t-il une sorte d'appel magic/API côté client que je dois lancer avant de re-poster mes données à l'URL verifyReceipt?

il y a eu quelques discussion sur ce sujet ici , mais il n'est pas clair pour moi si je peux / devrais m'attendre à être en mesure de re-vérifier les abonnements entièrement du côté du serveur en envoyant à l'URL verifyReceipt ou si je dois faire quelque chose du côté des clients aussi.

Merci!

23
demandé sur Community 2011-07-06 00:33:23

3 réponses

copié du Forum des développeurs D'Apple, pour ceux qui ne veulent pas aller sur le forum...

Compris (mais pas grâce à la Pomme docs):

abonnements de 1 mois renouvellement automatique toutes les 5 minutes. So far So good. Ils auto-renouveler 5 fois et puis ils s'arrêtent, donc après 25 minutes, vous obtiendrez l'erreur 21006. Toutefois, même en rachetant le même abonnement il ne sera pas auto-renouveler à nouveau sur le même compte de test car il avoir déjà auto-renouvelé 5 fois. Donc, si vous voulez tester le renouvellement et vous ont été déconner avec ces abonnements pour un bien que vous avez besoin de créer un nouvel utilisateur itunes connect test. C'est très ennuyeux honnêtement et il serait beaucoup plus facile si nous pouvions juste réinitialiser l'ensemble de la historique d'achat d'un compte d'utilisateur test. Aussi mettre tous les in-app l'information d'essai dans la documentation de Xcode serait beaucoup mieux que opposé à la diffusion sur Xcode docs / iTunes Connect doc / people comprendre les choses eux-mêmes

Espérons que cette aide.

41
répondu Ghazanfar Ali 2013-06-24 05:32:32

cette conversation dans les forums Apple dev peut apporter un éclairage sur cette question pour d'autres qui découvrent ce post: https://devforums.apple.com/thread/105350?tstart=0

6
répondu esilver 2011-07-30 21:32:22

@Lata Sadhwani, développeur D'applications

pour tester le renouvellement automatique des abonnements, le temps d'expiration est de 5 minutes dans le bac à sable (au moins pour les abonnements mensuels, pas sûr si ce est différent selon les périodes). Donc lors de l'essai d'un renouvellement automatique abonnement en bac à sable, il devrait auto-renouveler toutes les 5 minutes et vous savent qu'ils travaillent correctement.

Mais il y a un problème. Ils abonnements renouvellement automatique seulement 5 fois (i.e. l'achat se produit 6 fois). Après cela, vous recevrez un message d'erreur lors de la vérification du reçu. Donc, si vous voulez tester après cela, vous aura besoin de tester avec un autre compte de test IAP (Oui c'est une douleur les tests, surtout si vous avez fait cela pendant un certain temps!)

Pour vérifier si un abonnement a été annulé ou est valide, votre code de vérification de réception devra analyser la réponse D'Apple les serveurs et les on dit qu'il faut vérifier chaque reçu. Si l' abonnement a expiré ou a été annulée, l'erreur correspondante le code sera retourné (un statut non nul). Si elle a été renouvelée par un utilisateur, le reçu le plus récent est retourné par les serveurs Apple.

3
répondu Dhaval Jivani 2016-05-20 05:54:54