アプリのライフサイクル

May 09 2023
: アプリ起動からシャットダウンまでのサイクル: メモリやデータの管理による使いやすさ ⬆️ セキュリティ処理が可能 UIApplication、AppDelegate 状況: UIApplication オブジェクトから送信されたメッセージを AppDelegate オブジェクトが受信し、それぞれを実行する関数を定義 Not Running: アプリが実行されていない状態Inactive:アプリが実行されているがイベントが受信されていない状態Active: アプリが実行されており、イベントが発生している状態Background: アプリがバックグラウンドにあるがコードが実行されている状態Suspened: アプリが実行されている状態AppDelegate.swift ファイルでデリゲート関数となるコードをバックグラウンドで実行していません。 SceneDelegate iOS 13 以降でサポートされるマルチシーン機能にうまく対応するため、AppDelegate / SceneDelegate AppDelegate 1.

:アプリ起動からシャットダウンまでのサイクル
:メモリやデータの管理による使いやすさ ⬆️セキュリティ処理可能

UIアプリケーション、AppDelegate

状況: AppDelegate オブジェクトが UIApplication オブジェクトから送信されたメッセージを受信し、それぞれを実行する関数を定義します

Not Running:アプリが実行されていない状態
Inactive:アプリは実行されているがイベントを受信して​​いない状態
Active:アプリは実行されており、イベントが発生している状態
Background:アプリはバックグラウンドにあるが、イベントが発生している状態実行中のコード
サスペンド:アプリがバックグラウンドで実行されるコードが実行されていない状態

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

シーンデリゲート

iOS 13以降でサポートされるマルチシーン機能にしっかり対応するため

AppDelegate / SceneDelegate

AppDelegate

1. func application(_:didFinishLaunchingWithOptions:) -> Bool

この方法でアプリケーションのセットアップを進めます。

2. func application(_:configurationForConnecting:options:) -> UISceneConfiguration

このメソッドは、アプリケーションが新しいシーン/ウィンドウを提供したいときに呼び出されます。

3. func application(_:didDiscardSceneSessions:)

ユーザーがシーンを放棄したときに呼び出されます。

シーンデリゲート

1. シーン(_: willConnectTo: オプション: )

これは、UISceneSession ライフサイクルで呼び出される最初のメソッドです。最初のコンテンツ ビューである新しい UIWindow を作成し、ウィンドウの rootViewController を設定します。
(ウィンドウ: アプリが動作するビューポート)

2. sceneWillEnterForeground(_ :)

シーンがフォアグラウンドに移行するときに呼び出されます。
1) バックグラウンド→フォアグラウンドのとき
2) 初めてアクティブになったとき

3. シーンがアクティブになりました(_ :)

非アクティブからアクティブに遷移するときに呼び出されます。

4. sceneWillResignActive(_ :)

アクティブ→非アクティブに遷移するときに呼び出されます。
例)アプリスイッチャーの状況

5.シーンDidEnterBackground(_ :)

シーンが前景から背景に移行するときに呼び出されます。
次回フォアグラウンドに戻ったり、データを保存したり、共有リソースを返したりするときに復元できるように、状態情報を保存します。

6. シーン切断(_ :)

シーンがバックグラウンドに入ると、リソースを解放するためにシステムが切断される可能性があります。
(disconnect :セッションが切断されました/アプリが終了したことを意味しません)

ViewControllerのライフサイクル