1

当我SKStoreReviewController.requestReview()在我的 SwiftUI 应用程序中向 Scene Delegate 请求审查时,我收到以下消息: Error in UIKit client: -[UIWindow setScreen:] should not be called if the client adopts UIScene lifecycle. Call -[UIWindow setWindowScene:] instead..

我在场景委托中使用以下代码请求审查:

if let windowScene = scene as? UIWindowScene {
    if UserDefaults.standard.integer(forKey: "launchCount") == 10 {
        let window = UIWindow(windowScene: windowScene)
        window.rootViewController = UIHostingController(rootView: homeView)
        self.window = window
        window.makeKeyAndVisible()
        if #available(iOS 14, *) {
            SKStoreReviewController.requestReview(in: windowScene)
        }
        else {
            SKStoreReviewController.requestReview()
        }
    }
}

此代码scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions)在 Scene Delegate 的方法中。iOS 14 的方法在从 请求审查的地方有效UIWindowScene,但早期版本的方法不起作用并返回先前指定的消息。有没有什么办法解决这一问题?提前感谢所有帮助。

4

0 回答 0