我使用SharedPreferences
將服務器數據保存在本地,當設備進入關閉狀態時,SharedPreferences
中的值丟失,再次從服務器下載。如何保存共享首選項值甚至設備關閉?
public void saveCollection(Context context)
{
SharedPreferences settings = context.getSharedPreferences(context.getString(R.string.restore_values), 0);
SharedPreferences.Editor e = settings.edit();
e.clear();
e.putStringSet(context.getString(R.string.collection), collection);
e.commit();
}
我已經這樣做了,但沒有運氣。
你怎麼知道他們沒有保存?您可能需要將代碼發佈到您嘗試檢索它們的地方,因爲如果您做得正確,它們將**在設備關閉時存儲這些值。 – codeMagic
你確定這不應該存儲在SQLite嗎?就是想。 SQLite示例在這裏:http://stackoverflow.com/questions/24142830/create-offline-sqlite-database-for-groups/24144236#24144236 另外,我不確定您獲得的首選項是否實際上是Application-具體。嘗試從ApplicationContext中打開SharedPreferences。 – EpicPandaForce
現在,通過「設備關閉」,我假設你的意思是睡眠模式,對嗎? –