微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

只接收活动的scenePhase,不继续XCode 12.4 IOS 14

如何解决只接收活动的scenePhase,不继续XCode 12.4 IOS 14

我正在尝试执行一些我之前放在我的应用程序委托中的代码,例如在进入后台时保存我的托管对象上下文。它确实读取 .active 并且它确实打印“Active”,但是,当我退出应用程序或任何事情(当我改变阶段时)时,它不会读取 .background 或 .inactive,并且它只运行一次,当我只运行应用程序时,它不会运行两次,这是我的代码

import SwiftUI

@main
struct TestingApp: App {


@Environment(\.scenePhase) var scenePhase

@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate


@Injected var authenticationService: AuthenticationService

@SceneBuilder var body: some Scene {
    WindowGroup {
        StatusBarView{
        RootView().environmentObject(authenticationService).environmentObject(ProgressBarState())
        }
    } .onChange(of: scenePhase) { phase in
        
        switch phase{
        case .background:
            print("background")
        case .inactive:
            print("inactive")
        case .active:
            print("active")
        @unkNown default:
            print("something new added by apple")
        }
            }
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。