只接收活动的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 (将#修改为@)