iOS App 跳转 AppStore下载页的两种方式

4,104 阅读1分钟

一、App 跳转到 AppStore 并打开下载页

NSURL *url = [NSURL URLWithString:@"itms-apps://itunes.apple.com/cn/app/id*******?mt=8"]

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]];


二、App 内模态跳转的方式在应用内直接打开 AppStore下载页

// 引入StoreKit头文件#import <StoreKit/SKStoreProductViewController.h>
// 添加代理
@interface HGURLOpenHigoHandler ()<SKStoreProductViewControllerDelegate>

@end

//实现跳转代码:

// MARK:应用内弹出App Store
- (void)popSKStoreProductViewController {
    //1.实例化一个VC
    SKStoreProductViewController *storeVC = [[SKStoreProductViewController alloc] init];
    //2.设置代理
    storeVC.delegate = self;
    //3.弹出VC
    [self.fromController presentViewController:storeVC animated:YES completion:nil];
    //4.加载应用数据
    [storeVC loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier:@"*********"} completionBlock:^(BOOL result, NSError * _Nullable error) {
        if (error) {
        }
    }];
}

#pragma mark - SKStoreProductViewControllerDelegate
- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController {
    //在代理方法里dismiss App Store 的 VC
    [viewController dismissViewControllerAnimated:YES completion:nil];
}