2012-03-22 7 views
3

私のアプリでは、永続データを格納するためにPreferenceActivityフレームワークを使用しています。私の意図は、複数の保存ファイルを作成することです。すべてのファイルはPreferenceでアクセスできますが、一度に1つのみです。SharedPreferencesとプライベートファイル

Context.openFileOutput()によって生成されたプライベートファイルを使用する方が良い場合は、いつSharedPreferencesを使用する方が良いでしょうか?

EDIT
私のデータはプリミティブにのみ存在します。

答えて

1

通常、開発者はgetDefaultSharedPreferencesを使用してアプリ全体に共通の設定ファイルを使用します。

ただし、AndroidのgetSharedPreferences(String name, int mode)Contextにあります。この場合、nameパラメータに渡された一意の名前を使用して、複数の設定ファイルを保存することができます。

ボラティリティについては、Editoredit()とし、次にcommit()を呼び出して、環境設定を強制的に保存することができます。

SharedPreferencesは確かnameに基づいて、共有されることに注意していることを確認してください:

好みの内容は、あなたが取得し、その変更することができ、それを通してSharedPreferencesを返す「name」をファイルを取得し、保持します値。 SharedPreferencesオブジェクトの1つのインスタンスだけが同じ名前の呼び出し元に返されます。つまり、作成されるとすぐにお互いの編集内容が表示されます。

+0

「SharedPreferences」を使用すると、データのセキュリティに問題はありませんか? – gobernador

+0

あなたはどんな種類のセキュリティを探していますか?あなたはあなたの質問にセキュリティを言及しなかった。 – louielouie

+0

私は 'SharedPreferences'を開くことができるモードをチェックしたいと思います。http://developer.android.com/reference/android/content/Context.html#MODE_PRIVATE – Benoir