Ivan Valkou 5 лет назад
Родитель
Сommit
a5d97c3665
1 измененных файлов с 18 добавлено и 2 удалено
  1. 18 2
      FreeAPS/Sources/Application/FreeAPSApp.swift

+ 18 - 2
FreeAPS/Sources/Application/FreeAPSApp.swift

@@ -19,6 +19,8 @@ private extension Swinject.Resolver {
 }
 
 @main struct FreeAPSApp: App {
+    @Environment(\.scenePhase) var scenePhase
+
     static let resolver = Container(defaultObjectScope: .container) { container in
         for dep in dependencies {
             dep.register(container: container)
@@ -33,12 +35,26 @@ private extension Swinject.Resolver {
         _ = resolver.resolve(FetchTreatmentsManager.self)!
     }
 
-    var body: some Scene {
+    init() {
         FreeAPSApp.resolver.setup()
         FreeAPSApp.loadServices()
+    }
 
-        return WindowGroup {
+    var body: some Scene {
+        WindowGroup {
             Main.Builder(resolver: FreeAPSApp.resolver).buildView()
         }
+        .onChange(of: scenePhase) { newScenePhase in
+            switch newScenePhase {
+            case .active:
+                debug(.default, "APPLICATION is active")
+            case .inactive:
+                debug(.default, "APPLICATION is inactive")
+            case .background:
+                debug(.default, "APPLICATION is in background")
+            @unknown default:
+                debug(.default, "APPLICATION: Received an unexpected scenePhase.")
+            }
+        }
     }
 }