Androidでプログラム作ってて、さんざんはまったので記録しておく。
SharedPreferences.Editor ed = getPreferences(MODE_PRIVATE).edit(); ed.putBoolean("flag", flag); ed.commit();
これだとflagが記録される。
SharedPreferences sp = getPreferences(MODE_PRIVATE); sp.edit().putBoolean("flag", flag); sp.edit().commit();
これだとflagが記録されない。
たぶん、edit()は、Editorのインスタンスをその都度生成してて、上の通りじゃ、空っぽのEditorをcommitしてるだけになってたんだと思う。
やれやれ。