iOS 应用内评分、应用内打开App Store

iOS6.0添加了新的api<StoreKit/StoreKit.h>,可以在应用内直接打开App Store。上代码:

应用内打开App Store

#import<StoreKit/StoreKit.h>
遵守协议SKStoreProductViewControllerDelegate
/**
 应用内打开App Store 需要APP在App Store中的ID
 */
- (void)openAppStore {
    
    SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] init];
    storeProductViewController.delegate = self;
    [storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : KAppID} completionBlock:^(BOOL result, NSError * _Nullable error) {
        if (!error) {
            [self presentViewController:storeProductViewController animated:YES completion:nil];
        }
    }];
}

#pragma mark -- SKStoreProductViewControllerDelegate

- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController {
    
    [viewController dismissViewControllerAnimated:YES completion:nil];
}

应用内评分

iOS10.3之后可以在应用内弹窗提示用户给APP评分,而且开发者可以在开发者管理后台 iTunes Connect 中“我的 App - 活动 - 评分与评论”能看到用户给 App 留下的评论,并可以选择某一条评论进行回复。

  • 很多文章说每年只用3次机会弹窗提示用户,目前我还没有验证是不是这个样子。
  • 开发模式下,调用此方法,可以一直弹出评分视图,但提交是灰色不可点击。
  • 新API虽然方便又好用,但是次数太少,而且弹出了用户可能也会点击“取消”,这也会使次数-1!而且,这个功能是有可能被用户关闭的,在系统设置->iTunes Store与App Store中可以找到“App内评分及评论”的开关,如果用户关闭了这个开关,则上面的窗口也不会弹出。

弹窗提示的时机

  • 提现成功后
  • 活跃用户(登录次数多/天或停留时间长)
  • 当用户处于任务中不要提示
/**
 展示APP评分弹框
 */
- (void)showAppReview {
    
    NSString *appName = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleDisplayName"];
    NSString *title = [NSString stringWithFormat:@"喜欢%@吗?\n给个五星好评吧,亲!",appName];
    UIAlertController * alertVC = [UIAlertController alertControllerWithTitle:title message:nil preferredStyle:UIAlertControllerStyleAlert];
    //跳转APPStore 中应用的撰写评价页面
    UIAlertAction *review = [UIAlertAction actionWithTitle:@"我要吐槽" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        NSURL *appReviewUrl = [NSURL URLWithString:KAppStoreGradeUrl];//换成你应用的 APPID
        CGFloat version = [[[UIDevice currentDevice]systemVersion]floatValue];
        if (version >= 10.0) {
            /// 大于等于10.0系统使用此openURL方法
            [[UIApplication sharedApplication] openURL:appReviewUrl options:@{} completionHandler:nil];
        }else{
            [[UIApplication sharedApplication] openURL:appReviewUrl];
        }
    }];
    [alertVC addAction:review];
    
    //不做任何操作
    UIAlertAction *noReview = [UIAlertAction actionWithTitle:@"用用再说" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
        [alertVC removeFromParentViewController];
    }];
    [alertVC addAction:noReview];
    
    //判断系统,是否添加五星好评的入口
    if (@available(iOS 10.3, *)) {
        if([SKStoreReviewController respondsToSelector:@selector(requestReview)]){
            UIAlertAction *fiveStar = [UIAlertAction actionWithTitle:@"五星好评" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
//此处应该在APP内做一个显示次数的记录  后期实现
                [[UIApplication sharedApplication].keyWindow endEditing:YES];//防止键盘遮挡
                [SKStoreReviewController requestReview];//无论您请求评分提示多少次,系统都会在365天内最多显示三次提示
            }];
            [alertVC addAction:fiveStar];
        }
    }
    
    dispatch_async(dispatch_get_main_queue(), ^{
        [self presentViewController:alertVC animated:YES completion:nil];
    });
}

参考
https://www.jianshu.com/p/c31362945983
https://www.jianshu.com/p/9b3c76e60ce3
https://www.jianshu.com/p/cdf74acb45f4?utm_source=desktop&utm_medium=timeline
https://www.jianshu.com/p/4f9fe2e1879e

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 每天进步一点点点点点点点点点点点点点点点点点点点点点点点点点点点点点点~~从开始只能写几句话、模仿别人的观点,到现...
    一个帅气的名字呀阅读 18,616评论 4 31
  • 苹果官网 21年版本: https://developer.apple.com/app-store/review...
    空空小僧阅读 5,919评论 0 1
  • 简介 App 正在改变世界,丰富人们的生活,并为像您一样的开发者提供前所未有的创新机会。因此,App Store ...
    o0_0o阅读 8,981评论 2 48
  • 第四重天:散发爱能量 (自2015-11-17开启本阶段) 某某人,你觉得自己的人生中,过去或现在,曾经或正在,有...
    李英花阅读 2,325评论 0 0
  • 男孩和女孩还互相爱着,可谁都无法主动先说复合。 男的要面子,女的要忘掉。 两人在一起聊过曾经,谈...
    差子阅读 1,895评论 0 0

友情链接更多精彩内容