01010harshad_vaghela

in app purchase

May 23rd, 2013
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.46 KB | None | 0 0
  1.  
  2.  
  3.  
  4. -(void)buyaudio
  5. {
  6. /* SKProductsRequest *request= [[SKProductsRequest alloc]
  7. initWithProductIdentifiers: [NSSet setWithObject: @"com.metatagg.3310identifier"]];
  8. request.delegate = self;
  9. [request start]; */
  10.  
  11. NSLog(@"connect itune");
  12.  
  13.  
  14. }
  15. - (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
  16. {
  17. [[SKPaymentQueue defaultQueue] addTransactionObserver:self];
  18.  
  19. NSArray *myProduct = response.products;
  20.  
  21. NSLog(@"%@",[[myProduct objectAtIndex:0] productIdentifier]);
  22.  
  23. //Since only one product, we do not need to choose from the array. Proceed directly to payment.
  24.  
  25. SKPayment *newPayment = [SKPayment paymentWithProduct:[myProduct objectAtIndex:0]];
  26.  
  27.  
  28. [[SKPaymentQueue defaultQueue] addPayment:newPayment];
  29.  
  30. }
  31.  
  32. - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
  33. {
  34. for (SKPaymentTransaction *transaction in transactions)
  35. {
  36. switch (transaction.transactionState)
  37. {
  38. case SKPaymentTransactionStatePurchased:
  39. [self completeTransaction:transaction];
  40. break;
  41. case SKPaymentTransactionStateFailed:
  42. [self failedTransaction:transaction];
  43. break;
  44. case SKPaymentTransactionStateRestored:
  45. [self restoreTransaction:transaction];
  46. default:
  47. break;
  48. }
  49. }
  50. }
  51. - (void) restoreTransaction: (SKPaymentTransaction *)transaction
  52. {
  53. NSLog(@"Transaction Restored");
  54.  
  55. [[SKPaymentQueue defaultQueue] finishTransaction: transaction];
  56. }
  57.  
  58. - (void) failedTransaction: (SKPaymentTransaction *)transaction
  59. {
  60.  
  61. if (transaction.error.code != SKErrorPaymentCancelled)
  62. {
  63. // Display an error here.
  64. UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Purchase Unsuccessful"
  65. message:@"Your purchase failed. Please try again."
  66. delegate:self
  67. cancelButtonTitle:@"OK"
  68. otherButtonTitles:nil];
  69. [alert show];
  70.  
  71. }
  72.  
  73. // Finally, remove the transaction from the payment queue.
  74. [[SKPaymentQueue defaultQueue] finishTransaction: transaction];
  75. }
Advertisement
Add Comment
Please, Sign In to add comment