初心者プログラミング日記 SwiftUI ⑦ ストレージのお話

WWDC20 Data Essential in SwiftUIにUIストレージのお話が出てきました。

 

例によって初心者の意訳なので、信用できない情報です。

 

Process Lifetimeということで、State,StateObject,Constantはデータを保持するけど、

Appが落ちた時には無くなっちゃうよ。だから、Extendede Lifetimeということで、

延命するためストレージ、SceneStorageとAppStorageを用意したよ。

あくまでUIのだけどね。

 

@SceneStorage-アプリの現在の状態に関する軽微な情報を保存するのに最適

スコープはScene

SwiftUIが管理

Viewからのみアクセス可能

 

@AppStarage-設定変更の保存などに最適

スコープはApp

ユーザーのデフォルトを使って保持される

App内からでもViewからでもどこからでもアクセス可能

 

Custom Lifetime

ObservableObject-プログラムを書くことで、サーバーや他のサービスで保存が可能