SKStore审查控制器,如何以正确的方式使用它?
我已经看到了一些答案,但不满意他们,并得到了一些想法,但不知道如何正确使用它,以便它将以适当的方式执行,但我认为它应该用于应用程序代表didFinishLaunching
,但我想确保在实时应用程序之前,没有任何喧嚣。 SKStoreReviewController
只适用于ios 10.3,我可以用快速和客观的方式解释一些代码。
更新:
其实我很困惑调用方法requestReview()
,我在哪里需要调用此方法? 在rootViewController
的viewDidLoad
或在rootViewController
的didFinishlaunching
?
谢谢。
SKStoreReviewController
在iOS 10.3及更高版本中可用。
根据APPLE的文件:
您可以要求用户在使用应用时对其进行评分或审核,而不必将其发送到App Store。您可以确定在调用API时有意义的用户体验中的几点,系统负责其余部分。
为了显示应用程序内的费率/审查,你必须添加StoreKit
框架。
请find这两种语言的示例代码:
目标C:
#import <StoreKit/StoreKit.h> - (void)DisplayReviewController { if([SKStoreReviewController class]){ [SKStoreReviewController requestReview] ; } }
因为xCode 9你可以这样做:
#import <StoreKit/StoreKit.h> - (void)DisplayReviewController { if (@available(iOS 10.3, *)) { [SKStoreReviewController requestReview]; } }
迅速:
import StoreKit func DisplayReviewController { if #available( iOS 10.3,*){ SKStoreReviewController.requestReview() } }
更新: 只有在用户与您的应用程序进行了演示之后,才能获得评分
对于Objective C,
1-)从Link Binary With Library中添加了StoreKit框架
2-)增加了框架
#import <StoreKit/StoreKit.h>
3-)添加下面的代码,你想调用应用程序回顾popup。 在这种情况下,我join了viewDidLoad。
- (void)viewDidLoad { [super viewDidLoad]; [SKStoreReviewController requestReview]; }
4-)你应该知道下面的解释来自苹果,当你在debugging模式下进行testing
当您的应用程序仍处于开发模式时调用此方法时,总是会显示评分/评论请求视图,以便您可以testing用户界面和体验。 但是,如果在使用TestFlight分发的应用程序中调用此方法,则此方法无效。
我想你可能会实现一个方法来计算,当他们运行应用程序,并将其存储在UserDefaults,然后调用requestReview()如果计数是5或10或类似的东西(这取决于你),通过这种方式,你有更多得到好评的机会。