App-Lebenszyklus
![](https://post.nghiatu.com/assets/images/m/max/724/1*1BI_UFUk3z2e6nI6fmAdHA.png)
: Zyklus vom App-Start bis zum Herunterfahren
: Benutzerfreundlichkeit durch Speicher- oder Datenverwaltung ⬆️ Sicherheit kann verarbeitet werden
![](https://post.nghiatu.com/assets/images/m/max/724/1*j_G9ePRDpAri1YHMUHIU2A.png)
UIApplication, AppDelegate
Situation: Definiert Funktionen, die das AppDelegate-Objekt vom UIApplication-Objekt gesendete Nachrichten empfängt und jeweils ausführt
Nicht ausgeführt: Der Status, in dem die App nicht ausgeführt wird.
Inaktiv: Der Status, in dem die App ausgeführt wird, aber keine Ereignisse empfangen werden.
Aktiv: Der Status, in dem die App ausgeführt wird und ein Ereignis auftritt.
Hintergrund: Der Status, in dem die App im Hintergrund läuft, aber Der Code, der ausgeführt wird.
Angehalten: Der Zustand, in dem sich die App im Hintergrund befindet und kein Code ausgeführt wird
Delegatenfunktionen in der Datei AppDelegate.swift
application(_:didFinishLaunching:) Run when the app first starts
applicationWillResignActive: - Executed when the app is moved from active to inactive
applicationDidEnterBackground: - Run when the app is in the background
applicationWillEnterForeground: - Executes when the app is moved from the background to the foreground (not yet running in the foreground)
applicationDidBecomeActive: - When the app is active and running
applicationWillTerminate: - Run when app closes
![](https://post.nghiatu.com/assets/images/m/max/724/1*j_G9ePRDpAri1YHMUHIU2A.png)
SceneDelegate
Um gut auf die ab iOS 13 unterstützte Mehrfachszenenfunktion zu reagieren
AppDelegate / SceneDelegate
AppDelegate
1. func application(_: didFinishLaunchingWithOptions: ) -> Bool
Die Einrichtung der Anwendung erfolgt auf diese Weise.
2. func application(_: ConfigurationForConnecting:options: ) -> UISceneConfiguration
Diese Methode wird aufgerufen, wenn die Anwendung eine neue Szene/ein neues Fenster bereitstellen möchte.
3. func application(_: didDiscardSceneSessions: )
Wird aufgerufen, wenn der Benutzer die Szene verlässt.
SceneDelegate
1. Szene(_: willConnectTo: Optionen: )
Dies ist die erste Methode, die im UISceneSession-Lebenszyklus aufgerufen wird. Es erstellt die erste Inhaltsansicht, ein neues UIWindow, und legt den rootViewController des Fensters fest.
(Fenster: das Ansichtsfenster, in dem die App funktioniert)
2. sceneWillEnterForeground(_ :)
Wird aufgerufen, wenn die Szene in den Vordergrund wechselt.
1) Wenn Hintergrund → Vordergrund
2) Wenn es zum ersten Mal aktiv wird
3. sceneDidBecomeActive(_ :)
Wird beim Übergang von inaktiv → aktiv aufgerufen.
4. sceneWillResignActive(_ :)
Wird aufgerufen, wenn aktive → inaktive Übergänge.
Beispiel: App-Umschalter-Situation
5. sceneDidEnterBackground(_ :)
Wird aufgerufen, wenn die Szene vom Vordergrund in den Hintergrund übergeht.
Speichern Sie Statusinformationen, damit sie bei der nächsten Rückkehr in den Vordergrund wiederhergestellt werden können, speichern Sie Daten oder geben Sie gemeinsam genutzte Ressourcen zurück.
6. sceneDidDisconnect(_ :)
Wenn die Szene in den Hintergrund tritt, besteht die Möglichkeit, dass das System die Verbindung trennt, um Ressourcen freizugeben.
(Disconnect: Sitzung wird getrennt / bedeutet nicht, dass die App beendet wird )
ViewController-Lebenszyklus
![](https://post.nghiatu.com/assets/images/m/max/724/1*B_gahadA7f7PA1mMKgCfFA.png)