13

次のように設定を取得すると、違いは何ですか:

PreferenceManager.getDefaultSharedPreferences(getBaseContext());

getPreferences(Context.MODE_PRIVATE);
4

1 に答える 1

24
PreferenceManager.getDefaultSharedPreferences(getBaseContext());

アプリケーションパッケージ全体に対してグローバルな設定ファイルへのアクセスを提供します。すべてのアクティビティが設定にアクセスできます(内部的には、設定を保持するxmlファイルに名前が付けられますyour.application.package_preferences.xml)。

contextInstance.getPreferences(Context.MODE_PRIVATE);

contextInstanceクラスのプリファレンスのみを提供します。コンテキストのクラスのインスタンスのみがこれらのプリファレンスにアクセスできます(パッケージがまだyour.application.packageありyour.application.package.foo.MyActivity、内部的にはプリファレンスファイルがありますfoo.MyActivity.xml)。

于 2011-04-13T17:14:59.567 に答える