蘋(píng)果APP評(píng)分機(jī)制開(kāi)發(fā)
- 1.頻率:一款A(yù)pp
每年只能顯示三次
評(píng)分彈窗吆录,無(wú)論更新的頻率如何。一旦用戶(hù)對(duì)App進(jìn)行評(píng)分,他們不會(huì)再看到評(píng)分彈窗钟鸵;- 2.用戶(hù)可以選擇在iOS設(shè)置中完全禁用應(yīng)用評(píng)分彈窗洒敏;
- 3.實(shí)現(xiàn)方式以
iOS10.3
為分水嶺(iOS10.3以前APP內(nèi)部打開(kāi)頁(yè)面跳轉(zhuǎn)到評(píng)分洋魂,iOS10.3以后APP內(nèi)打開(kāi)評(píng)分彈框)- 4.完全的自定義帅掘,打開(kāi)APP Store中的對(duì)應(yīng)應(yīng)用的詳情頁(yè)灾部,在APP Store中評(píng)分(無(wú)次數(shù)限制珊佣,需接口記錄當(dāng)前用戶(hù)是否已評(píng)分蹋宦,審核時(shí)不能彈出——有上線被拒風(fēng)險(xiǎn))
總結(jié)三種實(shí)方法
實(shí)現(xiàn)方法
一、APP內(nèi)部打開(kāi)頁(yè)面跳轉(zhuǎn)到評(píng)分
/*
iOS6.0提供了一個(gè)框架StoreKit.framework,
1.導(dǎo)入StoreKit.framework,
2.在需要跳轉(zhuǎn)的控制器里面添加頭文件 #import <StoreKit/StoreKit.h>,
3.實(shí)現(xiàn)代理方法:< SKStorePRoductViewControllerDelegate >
*/
SKStoreProductViewController *storeProductViewController;
[storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier:KAPPID} completionBlock:^(BOOL result, NSError * _Nullable error) {
if (error){
DLog(@"error %@ with userInfo %@",error,[error userInfo]);
}else{
[self presentViewController:storeProductViewController animated:YES completion:nil];
}
}];
SKStoreProductViewControllerDelegate
代理方法
//Appstore 取消按鈕的回調(diào)
-(void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController
{
[storeProductViewController dismissViewControllerAnimated:YES completion:nil];
}
二咒锻、(iOS10.3之后的方法)APP內(nèi)打開(kāi)評(píng)分彈框
iOS 10.3之后冷冗,用戶(hù)可以在APP內(nèi)直接進(jìn)行評(píng)分,不需要再跳轉(zhuǎn)到AppStore
OC版:
引入框架
#import <StoreKit/StoreKit.h>
#import "Availability.h"(用于判斷 ios 版本)
調(diào)用requestReview
方法
if (__IPHONE_10_3){
//一句話實(shí)現(xiàn)在App內(nèi)直接評(píng)論了惑艇。然而需要注意的是:打開(kāi)次數(shù)一年不能多于3次蒿辙。(開(kāi)發(fā)期間可以無(wú)限制彈出,方便測(cè)試)
[SKStoreReviewController requestReview];
} else {
NSLog (@"系統(tǒng)版本不支持此方法");
}
Swift 版:
引入框架
import StoreKit
調(diào)用requestReview
方法
SKStoreReviewController.requestReview()
三滨巴、跳轉(zhuǎn)到App Store評(píng)分思灌、評(píng)價(jià)
跳轉(zhuǎn)到APP Store的應(yīng)用詳情位置
- 調(diào)用
UIApplication 的 openURL:
方法,打開(kāi)當(dāng)前 App 的 App Store URL
// openURL: 方法在 iOS 10 以后已被棄用恭取,替換為 openURL:options:completionHandler:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-apps://itunes.apple.com/app/id123456789"]];
//id 字符串后續(xù)的數(shù)字為當(dāng)前 App 對(duì)應(yīng)的 Apple ID可以在 App Store Connect 后臺(tái)查到
id
字符串后續(xù)的數(shù)字為當(dāng)前 App 對(duì)應(yīng)的 Apple ID可以在 App Store Connect 后臺(tái)查到
這種方式只打開(kāi) App 在 App Store 詳情頁(yè)面泰偿,用戶(hù)如果想進(jìn)行評(píng)分或評(píng)論,需要在該頁(yè)面往下滑動(dòng)蜈垮,找到“評(píng)分及評(píng)論”功能耗跛。
- 跳轉(zhuǎn)到 App Store 后,直接彈出“撰寫(xiě)評(píng)論”頁(yè)面窃款,可以在上述 App 的鏈接地址后面加上
action=write-review
itms-apps://itunes.apple.com/app/id123456789?action=write-review
- 打開(kāi)應(yīng)用在App Store中的“評(píng)分及評(píng)論”頁(yè)面
itms-apps://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=123456789
冬日里的一抹紅
方法不重要课兄,重要的是在應(yīng)用APP評(píng)分機(jī)制時(shí)需要清楚以下的四個(gè)問(wèn)題:
- 1.評(píng)分彈出的時(shí)機(jī)(位置);
- 2.評(píng)分彈出的時(shí)間間隔晨继;
- 3.評(píng)分彈出的時(shí)間點(diǎn)烟阐;
- 4.選用合適的實(shí)現(xiàn)方式
上展示:
APP內(nèi)評(píng)分
不能提交