方式一:deep link
在 APP 地址的后面拼接參數(shù) action=write-review 跳轉(zhuǎn)到 APP Store 評論頁進(jìn)行評價(jià)类溢。
NSString *str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/app/id%@?action=write-review", kAPPID];
NSURL *url = [NSURL URLWithString:str];
if ([UIApplication.sharedApplication canOpenURL:url]) {
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:NULL];
}
跳轉(zhuǎn)后的頁面:
IMG_7BDFB00DC5E3-1.jpeg
方式二:SKStoreProductViewController
使用 SKStoreProductViewController 打開產(chǎn)品頁進(jìn)行評論奠蹬。
SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] init];
storeProductViewController.delegate = self;
[storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier: kAPPID} completionBlock:^(BOOL result, NSError * _Nullable error) {
if (error) {
} else {
[self presentViewController:storeProductViewController animated:YES completion:nil];
}
}];
還需要實(shí)現(xiàn) SKStoreProductViewControllerDelegate
- (void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController {
[viewController dismissViewControllerAnimated:YES completion:nil];
}
這種方式評分沒問題:
WechatIMG1.jpeg
但是撰寫評論時(shí)頂部的按鈕會(huì)被遮住,影響操作(iPhone 6盗冷, iOS 12.4.8):
WechatIMG2.jpeg
方式三:SKStoreReviewController
SKStoreReviewController 是在 iOS 10.3 才推出的新評分方式。
[SKStoreReviewController requestReview];
WechatIMG5.jpeg
使用有以下限制:
- 系統(tǒng)版本不低于 iOS 10.3
- 只能評分圆存,不能撰寫評論
- debug模式下可以無限次彈出玉掸,但是不能點(diǎn)提交按鈕
- TestFlight測試時(shí)不會(huì)彈出
- App Store 正式版同一用戶一年最多允許彈出三次
基于以上限制店归,該方式不適合讓用戶點(diǎn)擊后彈出阎抒。我們需要在滿足一定的條件下,自動(dòng)彈出消痛。比如用戶第3次打開當(dāng)前版本且叁。