アプリプロセスが停止した場合でも、再起動時にデータを利用できるように、単純な変数を保存しようとしています。ApplicationクラスとsharedPreferencesの拡張を検討しました。私には、アプリケーションの拡張は、アプリのプロセスが停止したときに削除される一時的なグローバル変数に適しているようです。ただし、sharedPreferencesは変数をファイルに保存するため、常に使用可能です。2つの違いは何ですか、そしてそれらの最適な使用法は何ですか?また、アプリが停止した場合でも保持したい変数を保存するのに最適なものは何ですか?
1 に答える
4
アプリのプロセスが強制終了されると、Application クラスに保存されているデータはすべて失われます。これは、アプリの複数回の起動と使用で不要なデータを保存する場合にのみ使用してください。
ハイスコア、音の好み、起動時のダイアログの表示などの単純なデータを保存するには、SharedPreferences が最適です。アプリでユーザーが行った購入のリストや、todo リスト アプリのメモなど、より包括的なデータについては、SQLite データベースを使用する必要があります。
さらに、PDF などのファイルや画像 (画像はデータベースに保存することもできます) を保存する場合は、内部ストレージまたは外部ストレージ (SD カード、または内部ストレージのパーティション) を使用できます。 )。ほとんどのデバイスでは、内部ストレージが非常に限られているため、過度に大きなファイルをそこに保存しないでください。
ドキュメントのこの部分は、ストレージ オプションに役立つはずです。
于 2013-01-06T20:48:45.560 に答える