0

私は次のことを解釈しましたSharedPreferencesが、彼らが何ができるのかについて少し疑問があります。これが私が見つけたものです:

AndroidSharedPreferencesは変数のグローバリゼーションに使用されるため、アプリケーション全体でSharedPreferences 、1つのクラスで静的変数を定義する代わりにデータを保存および取得し、そのクラスを使用してアプリ全体で変数を取得できます。

誰かがこれが正しいかどうか説明できますか?私が見逃している大きな違いがある場合は、私に知らせてください。ありがとう。

4

2 に答える 2

3

sharedpreferencesを保存する場合、Androidシステムはそれらの値を保持する新しいxmlファイルをアプリディレクトリに作成するだけです。したがって、アプリが強制終了された場合、それらの変数は保存されます。また、変数はファイルに保存されているため、どのアクティビティからでも常に読み取ることができます。

共有設定を保存するときは、後でアクセスするためにキー(最終的な静的文字列)を使用します。おそらく、静的設定について話すとき、そのキーが意味するものです。

小さな例:

静的:

public static final String PREFS_NAME = "settings"
public static final String SILENT_MODE = "silentMode";

アプリのアクティビティ:

SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
boolean silent = settings.getBoolean(SILENT_MODE, false);

編集元:http://developer.android.com/guide/topics/data/data-storage.html#pref

于 2012-09-27T15:18:34.650 に答える
2

SharedPreferencesを使用して、プリミティブデータを保存および取得します。静的変数アプローチとは異なり、このデータは、アプリケーションが強制終了された場合でも、ユーザーセッション間で保持されます。

于 2012-09-27T15:23:38.750 に答える