使用Apptentive时无法识别的选择器: - [ATAppRatingFlow appDidLaunch:viewController:]

时间:2013-10-03 17:25:30

标签: ios objective-c apptentive

由于无法识别的选择器,在Apptentive API中调用以下方法会崩溃。

ATAppRatingFlow *ratingFlow = [ATAppRatingFlow sharedRatingFlowWithAppID:kApptentiveAppID];
[ratingFlow appDidLaunch:YES viewController:self.navigationController];

产生以下错误日志:

*2013-10-03 10:32:08.089 YourApp[39841:a0b] -[ATAppRatingFlow appDidLaunch:viewController:]: unrecognized selector sent to instance 0xc5aee60*
*2013-10-03 10:32:08.144 YourApp[39841:a0b] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ATAppRatingFlow appDidLaunch:viewController:]: unrecognized selector sent to instance 0xc5aee60'*
**** First throw call stack:*
*(*
* 0 CoreFoundation 0x0257f5e4 __exceptionPreprocess + 180*
* 1 libobjc.A.dylib 0x022ee8b6 objc_exception_throw + 44*
* 2 CoreFoundation 0x0261c903 -[NSObject(NSObject) doesNotRecognizeSelector:] + 275*
* 3 CoreFoundation 0x0256f90b ___forwarding___ + 1019 

1 个答案:

答案 0 :(得分:1)

以前版本的Apptentive使用以下3种方法来显示评级流程:

- (void)appDidLaunch:(BOOL)canPromptForRating viewController:(UIViewController *)viewController;

- (void)appDidEnterForeground:(BOOL)canPromptForRating viewController:(UIViewController *)viewController;

- (void)userDidPerformSignificantEvent:(BOOL)canPromptForRating viewController:(UIViewController *)viewController;

在较新版本的应用中,它们已被替换为单一方法:

- (void)showRatingFlowFromViewControllerIfConditionsAreMet:(UIViewController *)viewController;

这样称呼:

[[ATAppRatingFlow sharedRatingFlow] showRatingFlowFromViewControllerIfConditionsAreMet:viewController];

如果您的评分条件(在Apptentive网站上设置)已被用户满足,则showRatingFlowFromViewControllerIfConditionsAreMet方法 显示评分流程。

    安装后
  • X
  • Y 使用次数
  • Z 重大事件