2012-06-18 9 views
6

Sto provando a testare l'acquisto in app nella mia app.Ripristino di un acquisto in app con un utente che non lo ha mai pagato

Quando ripristino l'acquisto in app con un utente di test che ha acquistato l'acquisto in app, tutto funziona correttamente.

Ma quando provo a ripristinare un acquisto in app con un utente che no rendono il in app purchase, prima mi aspettavo il quadro di chiamare il seguente metodo:

-paymentQueue:restoreCompletedTransactionsFailedWithError:

ma invece chiama il quadro:

-paymentQueueRestoreCompletedTransactionsFinished:

come il mio utente di prova già acquistato il in app purchase ....

È normale? E se sì, come faccio a testare un utente che tenta di ripristinare senza mai acquistare l'acquisto in app?

risposta

7

vedere la risposta qui: iOS in-app-purchase restore returns many transactions

Dovrete gestire in osservatore transazione.

In breve, si inizia con il processo di ripristino:

[[SKPaymentQueue defaultQueue] addTransactionObserver:self]; 
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions]; 

Poi seguente osservatore operazione si chiama:

- (void)paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue 
{ 
    int thisIsTheTotalNumberOfPurchaseToBeRestored = queue.transactions.count; 

    for (SKPaymentTransaction *transaction in queue.transactions) 
    { 
     NSString *thisIsProductIDThatHasAlreadyBeenPurchased = transaction.payment.productIdentifier; 

     if([thisIsProductIDThatHasAlreadyBeenPurchased isEqualToString:product1ID]) 
     { 
      //Enable product1 here 
     } 
    } 
} 
1

Provare MKStoreKit quadro https://github.com/MugunthKumar/MKStoreKit È piuttosto buono, ben mantenuto quadro. Ho alcune app con acquisti in-app. Non ho mai avuto problemi del genere.

+0

puoi inviare il link. come usare questa fonte, perché sul blog di Kumar esiste una descrizione complessa su come usarlo. c'è un altro modo per includere queste sorgenti nel progetto? ma so che questo è il migliore e molti miei amici lo usano pure. –

+0

Sfortunatamente non esiste un progetto dimostrativo perché devi configurare un paio di cose nella tua app. Ci vogliono alcune ore per farlo funzionare, ma è soprattutto capire come impostare la tua app per l'acquisto di app. Il link github è la tua migliore fonte di informazioni. La ricerca di Google mostra un post sul blog obsoleto. – Tibidabo

0

@Tibidabo io non lo consiglio MKStoreKit perché ha un grande hole a ripristinare funzionalità degli articoli acquistati.

Problemi correlati