企业信息

    北京沃赢科技有限公司

  • 11
  • 公司认证: 营业执照已认证
  • 企业性质:
    成立时间:
  • 公司地址: 北京市 海淀区 海淀街道 北京市海淀区银海大厦
  • 姓名: 刘老师
  • 认证: 手机未认证 身份证未认证 微信未绑定

    IOS应用内购买

  • 所属行业:商务服务 教育培训 管理培训
  • 发布日期:2015-08-19
  • 阅读量:200
  • 价格:面议
  • 产品规格:不限
  • 产品数量:10000.00 套
  • 包装说明:不限
  • 发货地址:北京海淀海淀  
  • 关键词:我赢职场,在线教育,iOS

    IOS应用内购买详细内容

    IOS应用内购买
    
    简介
    应用程序内购买是应用程序用于购买额外内容或升级功能。
    我赢职场课程学习如下:
    实例步骤
    1.在 iTunes 连接中请确保拥有一个一的 App ID(unique App ID ),当创建捆绑的ID( bundle ID)应用程序更新时,代码会以相应的配置文件签名在Xcode上
    2.创建新的应用程序和更新应用程序信息。你可以知道更多有关的,在苹果的 添加新的应用程序 文档中
    3.在应用程序页的管理应用程序( Manage In-App Purchase)中,为app内付费添加新产品
    4.确保设置的应用程序为的银行详细。需要将其设置为在应用程序内购买(In-App purchase)。此外在 iTunes 中使用管理用户(Manage Users)选项,创建一个测试用户帐户连接您的应用程序的页。
    5.下一步是与处理代码和为我们在应用程序内购买创建有关的 UI。
    6.创建一个单一的视图应用程序,并在 iTunes 中*的标识符连接输入捆绑标识符
    7.更新ViewController.xib ,如下所示
    
    8.为三个标签创建IBOutlets,且将按钮分别命名为 productTitleLabel、 productDescriptionLabel、 productPriceLabel 和 purchaseButton
    9.选择项目文件,然后选择目标,然后添加StoreKit.framework
    10.更新ViewController.h ,如下所示
    #import #import @interface ViewController : UIViewController{    SKProductsRequest *productsRequest;    NSArray *validProducts;    UIActivityIndicatorView *activityIndicatorView;    IBOutlet UILabel *productTitleLabel;    IBOutlet UILabel *productDescriptionLabel;    IBOutlet UILabel *productPriceLabel;    IBOutlet UIButton *purchaseButton;}- (void)fetchAvailableProducts;- (BOOL)canMakePurchases;- (void)purchaseMyProduct:(SKProduct*)product;- (IBAction)purchase:(id)sender;@end
    11.更新ViewController.m ,如下所示
    #import "ViewController.h"#define kTutorialPointProductID @"com.tutorialPoints.testApp.testProduct"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad{    [super viewDidLoad];    // Adding activity indicator    activityIndicatorView = [[UIActivityIndicatorView alloc]    initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];    activityIndicatorView.center = self.view.center;    [activityIndicatorView hidesWhenStopped];    [self.view addSubview:activityIndicatorView];    [activityIndicatorView startAnimating];    //Hide purchase button initially    purchaseButton.hidden = YES;    [self fetchAvailableProducts];    }- (void)didReceiveMemoryWarning{    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}-(void)fetchAvailableProducts{    NSSet *productIdentifiers = [NSSet     setWithObjects:kTutorialPointProductID,nil];    productsRequest = [[SKProductsRequest alloc]     initWithProductIdentifiers:productIdentifiers];    productsRequest.delegate = self;    [productsRequest start];}- (BOOL)canMakePurchases{    return [SKPaymentQueue canMakePayments];}- (void)purchaseMyProduct:(SKProduct*)product{    if ([self canMakePurchases]) {        SKPayment *payment = [SKPayment paymentWithProduct:product];        [[SKPaymentQueue defaultQueue] addTransactionObserver:self];        [[SKPaymentQueue defaultQueue] addPayment:payment];    }    else{        UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:        @"Purchases are disabled in your device" message:nil delegate:        self cancelButtonTitle:@"Ok" otherButtonTitles: nil];        [alertView show];    }}-(IBAction)purchase:(id)sender{    [self purchaseMyProduct:[validProducts objectAtIndex:0]];    purchaseButton.enabled = NO; }#pragma mark StoreKit Delegate-(void)paymentQueue:(SKPaymentQueue *)queue  updatedTransactions:(NSArray *)transactions {    for (SKPaymentTransaction *transaction in transactions) {        switch (transaction.transactionState) {            case SKPaymentTransactionStatePurchasing:                    NSLog(@"Purchasing");                break;                            case SKPaymentTransactionStatePurchased:               if ([transaction.payment.productIdentifier                   isEqualToString:kTutorialPointProductID]) {                   NSLog(@"Purchased ");                   UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:                   @"Purchase is completed succesfully" message:nil delegate:                   self cancelButtonTitle:@"Ok" otherButtonTitles: nil];                   [alertView show];                }                               [[SKPaymentQueue defaultQueue] finishTransaction:transaction];                break;                            case SKPaymentTransactionStateRestored:                               NSLog(@"Restored ");                               [[SKPaymentQueue defaultQueue] finishTransaction:transaction];                break;                            case SKPaymentTransactionStateFailed:                NSLog(@"Purchase failed ");                break;            default:                break;        }    }}-(void)productsRequest:(SKProductsRequest *)request  didReceiveResponse:(SKProductsResponse *)response{    SKProduct *validProduct = nil;    int count = [response.products count];    if (count>0) {        validProducts = response.products;        validProduct = [response.products objectAtIndex:0];        if ([validProduct.productIdentifier            isEqualToString:kTutorialPointProductID]) {            [productTitleLabel setText:[NSString stringWithFormat:            @"Product Title: %@",validProduct.localizedTitle]];            [productDescriptionLabel setText:[NSString stringWithFormat:            @"Product Desc: %@",validProduct.localizedDescription]];            [productPriceLabel setText:[NSString stringWithFormat:            @"Product Price: %@",validProduct.price]];                   }            } else {        UIAlertView *tmp = [[UIAlertView alloc]                            initWithTitle:@"Not Available"                            message:@"No products to purchase"                            delegate:self                            cancelButtonTitle:nil                            otherButtonTitles:@"Ok", nil];        [tmp show];    }        [activityIndicatorView stopAnimating];    purchaseButton.hidden = NO;}@end
    注意:?需要修改你创建In-App Pur(应用内购买)的 kTutorialPointProductID 。通过修改fetchAvailableProducts产品标识符的 NSSet, 你可以添加多个产品。
    输出
    运行该应用程序,输出结果如下
    
    确保已经中登录。单击购买选择现有的Apple ID。输入有效的测试帐户的用户名和密码。几秒钟后,显示下面的信息
    
    一旦产品成功购买,将获得以下信息。可以在显示此信息的地方,更新应用功能相关的代码
    
    学习链接/ios/?tg=5009295340
    学习交流群:317140762
    

    http://jiexiaotan.cn.b2b168.com
    欢迎来到北京沃赢科技有限公司网站, 具体地址是北京市海淀区海淀街道北京市海淀区银海大厦,联系人是刘老师。 主要经营iOS开发、互联网架构师、安卓、Oracle、SAP、RedHat等。 单位注册资金未知。 我们公司主要服务有:教育教学软件等,我们愿以优质的服务和诚意、为您提供精良的产品和专业枝术,共创美好未来!