首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SKStoreReviewController请求审阅时出错

使用SKStoreReviewController请求审阅时出错
EN

Stack Overflow用户
提问于 2021-03-20 21:09:43
回答 1查看 164关注 0票数 1

当我使用SKStoreReviewController.requestReview()从我的SwiftUI应用程序中的场景代理请求一个评论时,我得到以下消息:Error in UIKit client: -[UIWindow setScreen:] should not be called if the client adopts UIScene lifecycle. Call -[UIWindow setWindowScene:] instead.

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

代码语言:javascript
复制
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)方法中。iOS 14的方法是在从UIWindowScene请求检查的情况下工作的,但是早期版本的方法不起作用,并返回前面指定的消息。有办法解决这个问题吗?提前谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2022-09-27 17:36:45

您可以使用我的SKStoreReviewController小包装器来解决这个问题。

代码语言:javascript
复制
import SwiftUI
import AppReview

struct ContentView: View {
    var body: some View {
        VStack {
            Text("SwiftUI")
        }.onAppear {
            AppReview.requestIf(launches: 3)
        }
    }
}

https://github.com/mezhevikin/AppReview

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66726515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档