2011-07-05 12 views
23

Ludzie,Jak przetestować komponent "odnów" subskrypcji automatycznego przedłużania w aplikacji Sandbox w sklepie z iOS?

Próbuję sprawdzić, czy subskrypcje automatycznego odnawiania są rzeczywiście odnawiane w środowisku piaskownicy. Po pierwsze, wydaje się, że automatyczne odnawianie subskrypcji w piaskownicy jest ważne tylko przez 5 minut. Ma sens. Spodziewam się, że jeśli będę czekać na pięć minut, a następnie dokonać innego połączenia do

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

z moimi danymi kwitów należy widzę subskrypcję odnowiony z datą ważności kolejne pięć minut na zewnątrz.

Niestety tak nie jest. Wszystko, co widzę, to odpowiedź z latest_expired_receipt_info i stanem 21006, co oznacza "Ten paragon jest ważny, ale subskrypcja wygasła" zgodnie z the Apple docs.

Czy ktoś może mi powiedzieć, czy może przetestować automatyczne odnawianie subskrypcji, łącznie z tym odnawiającym się komponentem? Czy muszę uruchomić tę aplikację i przekreślić palcami, że prod będzie działać tak, jak reklamowano?

Czy istnieje jakieś wywołanie funkcji magic/API po stronie klienta, które muszę wykonać przed ponownym opublikowaniem moich danych w adresie URL verifyReceipt?

Było trochę discussion on this topic here, ale nie jest dla mnie jasne, czy mogę/powinienem oczekiwać, że będę w stanie ponownie zweryfikować subskrypcje całkowicie po stronie serwera, publikując adres URL verifyReceipt lub jeśli muszę coś zrobić na kliencie także strona.

Dzięki!

Odpowiedz

6

Ta rozmowa na forach dev Apple może rzucić nieco światła na ten temat dla innych, którzy odkrywają ten post: https://devforums.apple.com/thread/105350?tstart=0

+0

ratownik .. dzięki za link. – TomSwift

+0

Dziękuję bardzo, jak mogliśmy wiedzieć o tym zgodnie z dokumentami Apple? O, spędziłem całą noc, zanim mój zakup wygasł. –

39

skopiowane z Developer Forum Apple, dla tych, którzy nie chcą goto forum ...

Zdobione (ale nie dzięki docs Apple): subskrypcje

1 miesiąc automatycznego odnawiania co 5 minut. Jak na razie dobrze. One automatycznie odnawiają się 5 razy, a następnie zatrzymują się, więc po 25 minutach otrzymasz błąd 21006. Jednak nawet po odkupieniu tej samej subskrypcji NIE będzie automatycznie odnawiać ponownie na tym samym koncie testowym, ponieważ ma już już 5 razy automatycznie odnowione. Jeśli więc chcesz przetestować odnowienie, a Ty niszczysz te subskrypcje przez jakiś czas, musisz utworzyć nowego użytkownika testu połączenia iTunes. Jest to bardzo denerwujące, szczerze mówiąc, i byłoby to o wiele łatwiejsze, gdybyśmy mogli po prostu zresetować całą historię zakupów testowego konta użytkownika . oddanie również wszystko w aplikacji informacji testowy w dokumentacji Xcode byłoby o wiele lepiej jak przeciwieństwie do rozprzestrzeniania go docs Xcode/doc/iTunes Connect ludziom zastanawianie rzeczy we własnym

nadzieję, że to pomaga.

+0

Po prostu, że skoro nie jest to odpowiednio udokumentowane, może to zmienić w każdej chwili bez powiadomienia. Więc jeśli widzisz błąd 21006 przed upływem 25 minut (lub brak błędu po 25 minutach), nie dziw się. To może nie być twoja wina. –

+0

@Ghazanfar Ali Czy możesz udostępnić łącze powyższego tekstu. Chciałbym przeczytać całą dokumentację na ten temat – Developer

+0

Bardziej zaktualizowana odpowiedź jest tutaj: http://stackoverflow.com/questions/12430994/mkstorekit-autorenewable-subscriptions?lq=1 – jasonjwwilliams

2

@Lata Sadhwani App deweloper

Do testowania automatycznego odnawiania subskrypcji, czas ważności wynosi 5 minut w piaskownicy (przynajmniej dla miesięcznych abonamentów, nie jestem pewien, czy to jest inna dla różne okresy). Tak więc podczas testowania subskrypcji automatycznej odnowienia w piaskownicy powinna ona automatycznie odnawiać się co 5 minut, a Ty wiesz, że działają poprawnie.

Ale jest jeden problem. Te subskrypcje są automatycznie odnawiane tylko 5 razy (tj. Zakup odbywa się 6 razy). Po tym otrzymasz błąd podczas weryfikacji potwierdzenia. Jeśli chcesz przetestować później, musisz przetestować inne konto testowe IAP (tak, to jest test na ból , zwłaszcza jeśli robisz to od dłuższego czasu!)

Aby sprawdzić, czy subskrypcja została anulowana lub jest ważna, twój kod weryfikacyjny paragonu będzie musiał przeanalizować odpowiedź z serwerów Apple i powiedzieli, że powinieneś zweryfikować każde potwierdzenie. Jeśli subskrypcja wygasła lub została anulowana, zostanie zwrócony odpowiedni kod błędu (stan niezerowy). Jeśli został on odnowiony przez użytkownika , najbardziej aktualne potwierdzenie jest zwracane przez serwery Apple.

Powiązane problemy