PreferenceActivityプライベート値として保存?

私はアンドロイドの共有選好の概念を理解していません。スマートフォン上のアプリケーションで共有されている事前共有はアクセス可能ですか?
このクラスを保存設定に使用する場合:

    public class ImpostazioniActivity extends PreferenceActivity {
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.impostazioni);

    } }

私が使っている他の活動の後のAnda:

  SharedPreferences preference =  PreferenceManager.getDefaultSharedPreferences(getContext());
    if(preference.getString("username","").length() == 0 || preference.getString("password","").length() == 0)
        return  false;
    else
        return  true;

大丈夫です?私は情報が私のアプリケーションでのみアクセス可能であると確信していますか? ありがとう

ベストアンサー

見積もり:

アプリケーションのSharedPreferencesオブジェクトを取得するには、2つの
  メソッド:

     

getSharedPreferences() – 複数の設定が必要な場合に使用します
  名前で識別されるファイル(最初のパラメータで指定します)。

     

getPreferences() – 設定ファイルが1つだけ必要な場合はこれを使用します。
  あなたの活動。これはあなたのための唯一の設定ファイルになるので
  アクティビティ、あなたは名前を指定しません。

したがって、
getSharedPreferences(PREFS_FILENAME、Context.MODE_PRIVATE)を使用する必要があります。PREFS_FILENAMEは、アプリケーションで使用するファイルです。
Context.MODE_PRIVATE
はファイル作成モードです。作成されたファイルは呼び出し側アプリケーション(または同じユーザーIDを共有するすべてのアプリケーション)によってのみアクセスできます。

編集:私はあなたのコードを見て、もしあなたが最初にそれを暗号化する必要があります任意の機密ユーザーの情報(パスワードのような)を格納する意図!これを見てください

ObscuredSharedPreferences実装
を参照してください。
SharedPreferencesでデータを暗号化/復号化することができます。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です