Sunday, 15 May 2011

ios5 - Restoring purchases in iOS -



ios5 - Restoring purchases in iOS -

i working on restoring purchases, have few doubts

1) how show restore button

i have shown on top left corner, , on click of phone call function

- (ibaction)restorepurchases:(id)sender { [[skpaymentqueue defaultqueue] addtransactionobserver:self]; [[skpaymentqueue defaultqueue]restorecompletedtransactions]; }

but if user has not purchased anyitem or if user has purchased item not deleted , reinstalled app, whether still need show restorebutton, , if yes, on click of should behaviour.

2) now, if have made purchase of item , delete app , reinstall app, , click on restore button, calls function

- (void)paymentqueue:(skpaymentqueue *)queue updatedtransactions:(nsarray *)transactions { (skpaymenttransaction *transaction in transactions) { switch (transaction.transactionstate) { case skpaymenttransactionstatepurchased: [self completetransaction:transaction]; break; case skpaymenttransactionstatefailed: [self failedtransaction:transaction]; break; **case skpaymenttransactionstaterestored: [self restoretransaction:transaction];** default: break; } } }

but now, suppose dont anyitem , click restore button, asks me apple id, after entering apple id, nil happens, doesnt phone call above function, want know why happening.

also, want display message user there no items restore, how can that.

i searched , 1 delegate function called,if there no transactions retore

- (void)paymentqueuerestorecompletedtransactionsfinished:(skpaymentqueue *)queue { }

what have done here have checked if there no items restore, display no items restore, whether right in approach.

regards ranjit

direct store kit header file

// asynchronous. add together completed transactions current user queue re-completed. user asked authenticate. observers receive 0 or more -paymentqueue:updatedtransactions:, followed either -paymentqueuerestorecompletedtransactionsfinished: on success or -paymentqueue:restorecompletedtransactionsfailedwitherror: on failure. in case of partial success, transactions may still delivered.

- (void)restorecompletedtransactions __osx_available_starting(__mac_na,__iphone_3_0);

ios ios5 ios6 in-app-purchase

No comments:

Post a Comment