本文主要是介绍(0040) iOS 开发之10.3新特性:程序内评价,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
程序内评价之SKStoreReviewController
在ios 10.3之后,系统提供了一个SKStoreReviewController类,可以帮助在app内部实现评价。App实现评价一般有下面几种方式。
#import <StoreKit/StoreKit.h>
方式一:程序内评价。要求(ios 10.3以上版本,每年弹出3次)
[SKStoreReviewController requestReview];
//苹果官方链接 https://developer.apple.com/ios/human-interface-guidelines/interaction/ratings-and-reviews/
实现效果如下:只能打星,不能评论。submit 按钮开发模式下无法点击。可能需要正式发布时才能点击吧!暂不清楚。
方式二:这种方式可以实现程序内评价。app内模态一个控制器。
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
SKStoreProductViewController *storeProductVC =[[SKStoreProductViewControlleralloc]init];
storeProductVC.delegate =self;
// 第一个参数为应用标识(appid NSNumber类型)构成的字典。第二个参数是一个block回调。
[storeProductVC loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier:@(1061832185)}completionBlock:^(BOOL result,NSError *error) {
if (result) {
[selfpresentViewController:storeProductVCanimated:YEScompletion:^{
}];
}else{
NSLog(@"错误:%@" ,error);
}
}];
}
// SKStoreProductViewController代理方法
- (void)productViewControllerDidFinish:(SKStoreProductViewController*)viewController
{
//返回上一个页面
[selfdismissViewControllerAnimated:YEScompletion:nil];
}
调用方式三:App 跳转。
// NSString *urlString = @"https://itunes.apple.com/cn/app/zhang-jiang-hui/id1061832185?mt=8&action=write-review";
// [[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];
属于传统评价方法。
最终效果如下(先跳转到App Store应用->打开对应app ->模态出评论点赞界面)
这篇关于(0040) iOS 开发之10.3新特性:程序内评价的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!