zoukankan      html  css  js  c++  java
  • SKStoreProductViewController

    从iOS6以后苹果提供了在应用内部打开App Store中某一个应用下载页面的方式,提供了一个SKStoreProductViewController的类对该功能进行支持。

    首先,需要导入#import <StoreKit/StoreKit.h>。

    其次,需要遵守<SKStoreProductViewControllerDelegate>这个协议。



    - (void)showStoreProductInApp:(NSString *)appID{ Class isAllow = NSClassFromString(@"SKStoreProductViewController"); if (isAllow != nil) { SKStoreProductViewController *sKStoreProductViewController = [[SKStoreProductViewController alloc] init]; [sKStoreProductViewController.view setFrame:CGRectMake(0, 200, 320, 200)]; [sKStoreProductViewController setDelegate:self]; [sKStoreProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier: appID} completionBlock:^(BOOL result, NSError *error) { if (result) { [self presentViewController:sKStoreProductViewController animated:YES completion:nil]; [self removeNotice]; }else{ NSLog(@"error:%@",error); } }]; }else{ //低于iOS6的系统版本没有这个类,不支持这个功能 NSString *string = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/xxxxxxx/app/id%@?mt=8",appID]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:string]]; } }
    [sKStoreProductViewController loadProductWithParameters:(NSDictionary *) completionBlock:^(BOOL result, NSError *error) {}]; 
    

     这个方法的第一个参数是NSDictionary类型,其中的Key为:

    NSString * const  SKStoreProductParameterITunesItemIdentifier ;  
    NSString * const  SKStoreProductParameterAffiliateToken ;  
    NSString * const  SKStoreProductParameterCampaignToken;  

    三种类型。

    SKStoreProductParameterITunesItemIdentifier是希望展示App的AppID,该Key所关联的值是一个NSNumber类型。支持iOS6以后的系统版本。

    SKStoreProductParameterAffiliateToken是附属令牌,该Key所关联的值是NSString类型。例如在iBook中app的ID,是iOS8中新添加的,支持iOS8以后的系统版本。

    SKStoreProductParameterCampaignToken是混合令牌,该Key所关联的值是一个40byte的NSString类型,使用这个令牌,你能看到点击和销售的数据报告。支持iOS8以后的系统版本.

     

     

     

  • 相关阅读:
    mysql获取插入时自增ID值的方法
    percona-toolkit介绍及安装
    mysql如何修改所有的definer
    Mysql数据库安全管理配置
    mysql update时报错You are using safe update mode
    mysql修改definer方法
    mysqldump: Couldn't execute 'show table status '解决方法
    Linux下修改PATH路径
    mysql 查看当前登陆用户匹配原则及权限user()与current_user()
    ASP.NET MVC post请求接收参数的三种方式
  • 原文地址:https://www.cnblogs.com/KingQiangzi/p/6945893.html
Copyright © 2011-2022 走看看