0

ユーザーが自分の設定を保存できるようにするアプリを作成しています。私は次のように共有設定を使用しています:

private void writeSettings(String val){
PreferenceManager.getDefaultSharedPreferences(context).edit().putString("status", val).commit();
        Log.d("stat", val);
}

これはうまく機能し、読み取りはうまく機能します。アプリを閉じて再起動すると消えてしまいます。アプリが削除されない限り、設定は保存されるはずですか?

4

2 に答える 2

1

writeSettings メソッドはどこで呼び出しますか? onStop() または onDestroy() の場合、これらが呼び出されないことがあります。この場合は、コードを onPause() に追加します。

それ以外は、次のように、チェーンに保存しないでください。

// save string in sharedPreferences 
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
SharedPreferences.Editor editor = settings.edit();
editor.putString("some_key", value); // here value is the string you want to save
editor.commit();                    

// restore string in sharedPreferences (usually you have this onCreate method) 
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
String string = settings.getString("some_key", "");
于 2013-04-03T16:24:10.837 に答える