iOS 14下SKStoreReviewController调用requestReview无弹窗问题咨询
iOS原生评分弹窗调试异常
我通过如下代码实现了原生应用评分弹窗:
if (@available(iOS 10.3, *)) { [SKStoreReviewController requestReview]; resolve(@YES); }
但在运行iOS 14.4的真机iPhone X上调试时,该弹窗并未显示。我在设备的系统控制台(非Xcode控制台)的日志中发现了如下报错:
No "UIViewServicePermittedViewControllerClasses" array in View Service bundle "com.apple.ios.StoreKitUIService"'s Info.plist. Cannot check validity of request for class "ServiceReviewViewController". This will become failure in a future build.
上述内容为设备实际输出的日志截图记录。
该弹窗在运行iOS 12.5的iPhone 6设备上可正常显示(仅提交按钮为灰色不可点状态)。
我注意到requestReview方法自iOS 14起已被弃用,因此我尝试使用传入Scene参数的新API方法,代码如下:
if (@available(iOS 14.0, *)) { [SKStoreReviewController requestReviewInScene:[UIApplication.sharedApplication.connectedScenes allObjects][0]]; } else if (@available(iOS 10.3, *)) { [SKStoreReviewController requestReview]; }
但设备日志中仍出现完全相同的报错。我已确认[UIApplication.sharedApplication.connectedScenes allObjects][0]对象并非nil。请问是否有人遇到过同类问题?
内容的提问来源于stack exchange,提问作者Simon Reggiani
相关产品推荐
相关产品推荐

