0

私は、実行セッション中にアプリケーションのグローバルデータを格納するためのすべての静的オブジェクトと関数を持つ抽象クラスを持っています。

システムの設定ALWAYS_FINISH_ACTIVITIESがtrueに設定されているICS以降のバージョンでアプリケーションを再起動すると、すべてのデータがnullにリセットされます。

アプリケーションの再起動時にデータを維持するためのより良い方法は何ですか?

よろしく、

アンドロイド IT

質問の編集: Sharepreference の方が優れたオプションであることはわかっていますが、アプリケーションの複数のセッションのデータを保存したくなく、保存しているデータが膨大です。よろしく、 Android IT

4

6 に答える 6

1

各 Android アプリは依存プロセスで実行されます。アプリがバックグラウンドになり、システムがメモリを必要とする場合、アプリのプロセスがシステムによって強制終了される可能性があります。この状況では、アプリを再起動すると、静的オブジェクトが失われます。

SharedPreference を使用してデータを維持する方が良い方法だと思います。

于 2012-10-25T10:02:16.637 に答える
0

XML ファイルを使用してデータをローカルに保存できます。DOM リーダーを使用すると、起動時に XML ファイルを読み取ることができます。

http://www.ibm.com/developerworks/library/x-android/

大量のデータがある場合は、SQLite データベースを使用できます

http://developer.android.com/training/basics/data-storage/databases.html

于 2012-10-25T10:01:43.530 に答える
0

アプリケーションが終了または破棄されると、すべてのデータが削除されます。再起動後にアクセスする場合は、要件に従ってデータを保存する必要があります。ローカルまたはウェブのように。それはあなたを深めます。現在、データを優先的に保存できるため、アプリケーションの再起動後に役立ちます。私はこれがあなたにとってより良いと思います: How to use SharedPreferences in Android to store, fetch and edit values

于 2012-10-25T10:08:24.033 に答える
0

http://developer.android.com/reference/android/content/SharedPreferences.htmlを使用してデータを保存できます。SharedPreferences

于 2012-10-25T09:59:48.477 に答える
0

ローカル ストレージにデータを保存するのが適切と思われます: http://developer.android.com/training/basics/data-storage/index.html

于 2012-10-25T09:59:57.570 に答える
0

データが多すぎない場合は、それらをSharedPreferencesに保持できます

PreferenceManager.getDefaultSharedPreferences()でそれらにアクセスします

于 2012-10-25T10:03:47.163 に答える