How to do in-app purchase in ios5?
来源:互联网 发布:辐射4原版捏脸数据 编辑:程序博客网 时间:2024/05/17 21:54
I have used the following code for in-app purchase.
- (void)viewDidLoad {if ([SKPaymentQueue canMakePayments]) { NSLog(@"Can Buy Product"); SKProductsRequest *productRequest=[[SKProductsRequest alloc]initWithProductIdentifiers:[NSSet setWithObject:@"com.mycompany.myproduct.productpack"]]; productRequest.delegate=self; [productRequest start];}else { NSLog(@"Product Can't be purchased");}}-(IBAction)purchasePack1 {SKPayment *payment=[SKPayment paymentWithProductIdentifier:@"com.mycompany.myproduct.productpack"];[[SKPaymentQueue defaultQueue] addTransactionObserver:self];[[SKPaymentQueue defaultQueue] addPayment:payment];}-(void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response {validProduct=nil;int count=[response.products count];if (count>0) { NSLog(@"Product Avail"); validProduct=[response.products objectAtIndex:0];}else { NSLog(@"No Product avail"); [purchaseBtn setHidden:TRUE];}}-(void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions {for (SKPaymentTransaction *transaction in transactions) { switch (transaction.transactionState) { case SKPaymentTransactionStatePurchasing: NSLog(@"Purchasing"); [activityIndicatorObj setHidden:FALSE]; [activityIndicatorObj startAnimating]; break; case SKPaymentTransactionStatePurchased: UIAlertView *alt=[[UIAlertView alloc]initWithTitle:@"Congrats" message:@"Thanks For Purchasing " delegate:self cancelButtonTitle:@"Dismiss" otherButtonTitles:nil]; [alt show]; [alt release]; NSLog(@"Purchased"); [activityIndicatorObj stopAnimating]; [activityIndicatorObj setHidden:TRUE]; [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; break; case SKPaymentTransactionStateFailed: if (transaction.error.code!=SKErrorPaymentCancelled) { NSLog(@"Cancelled"); } [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; UIAlertView *alt1=[[UIAlertView alloc]initWithTitle:@"Sorry" message:@"Some Error Encountered!" delegate:self cancelButtonTitle:@"Dismiss" otherButtonTitles:nil]; [alt1 show]; [alt1 release]; NSLog(@"Failed"); [activityIndicatorObj stopAnimating]; [activityIndicatorObj setHidden:TRUE]; break; case SKPaymentTransactionStateRestored: NSLog(@"Restored"); [activityIndicatorObj stopAnimating]; [activityIndicatorObj setHidden:TRUE]; [[SKPaymentQueue defaultQueue] finishTransaction:transaction]; break; default: break; }}}
- How to do in-app purchase in ios5?
- In-App purchase
- In App Purchase总结
- 'In App Purchase
- In App Purchase
- In App Purchase总结
- In App Purchase
- in app purchase笔记
- In App Purchase总结
- In-App-Purchase 中文版
- In App Purchase总结
- In-App Purchase
- In App Purchase总结
- In App Purchase总结
- Apple In-App Purchase
- In app purchase收集
- In-app purchase verification
- In App Purchase Statuses
- 互斥量、临界区、信号量和时间的作用与区别
- Windows Phone开发遇到的一些事(一 饼状图,扇形,弧线等)
- BCGControlbar
- real-uid,effictive uid,saved-uid
- Android全透明
- How to do in-app purchase in ios5?
- VS2008 添加service引用和web引用的区别
- DCOM的學習和配置
- Swing框架之Component
- table拼接大图片时,取消图片之间的空隙
- 使用java中汇编指令解析String对象(String s1="a";String s2=s1+"b";String s3=new String("a");String s4=s3+"a";)
- 在新线程中使用NSTimer
- js模式对话框
- Asp.Net日期时间格式设置