Sto implementando uno scenario di abbonamento auto-rinnovabile, in cui la convalida della ricevuta verrà gestita dal mio codice lato server. Seguendo Apple documentation, otterrò i dati di ricevuta da NSBundle
e passerò quei dati al mio server, che contatterà Apple per convalidare la ricevuta e informare l'app sul risultato.Sottoscrizioni auto-rinnovabili iOS: flussi di convalida scontrino
Ora le mie domande sono legati ai flussi necessari relativi alla convalida ricezione:
Se l'utente acquista un abbonamento, la mia ricevuta sarà aggiornato automaticamente con le informazioni da questo acquisto? In tal caso, è necessario convalidare tale ricevuta subito dopo un acquisto o devo "sbloccare" immediatamente l'app?
In quali situazioni manca la ricevuta da
NSBundle
? Se ciò accade, suppongo che dovrei usareSKReceiptRefreshRequest
per aggiornare la ricevuta e inviarla al server per la convalida.Se l'utente installa l'app su un altro dispositivo e ripristina i suoi acquisti
restoreCompletedTransactions
, ottengo automaticamente la ricevuta nello stesso momento? Suppongo di dover convalidare la ricevuta dopo un ripristino per assicurarmi che ci sia un abbonamento attivo, corretto?Quando il mio server tenta di convalidare una ricevuta e tale ricevuta non è valida, cosa dovrebbe accadere sul lato dell'app? Aggiorna la ricevuta (che chiederà all'utente le credenziali) e passala nuovamente al server per una nuova ri-validazione?
Rui, hai già capito i dettagli di questo? Sarebbe bello se tu (o qualcun altro) potessi fornire una risposta a questa domanda. –