現在、AndroidのSharedPreferencesで作業していますが、説明できない奇妙な動作が発生しました。これは私のコードです:SharedPreferencesに値が保存されていません
SharedPreferences appPreferences = this.getSharedPreferences("settings", Context.MODE_PRIVATE);
appPreferences.edit().putBoolean("launched_before", true);
appPreferences.edit().apply();
appPreferences = null;
appPreferences = this.getSharedPreferences("settings", Context.MODE_PRIVATE);
boolean test = appPreferences.getBoolean("launched_before", false); //this is false
私のSharedPreferencesに書き込む値は保存されていません。私はgetDefaultSharedPreferences()
を使うことができると知っていますが、デフォルトのファイルには他の値が格納されているので、ここではしたくありません。
私はcommit()
の代わりapply()
を使用する場合は、commit()
の戻り値がtrue
ですが、私はまだ正しくファイルをロードすることはできません。
が非同期動作でみてください、とあなたが同期コードの結果が保証されていません。あなたはそれを入れた後にブール値を取得しようとしましたか?私は再割り当てのポイントが表示されません –
@ cricket_007どこでも私はそれを読み取ろうとすると、それは偽になります – PKlumpp