你真的瞭解SharedPreferences的Editor嗎?很多人覺得,再熟悉不過了,經常使用它進行數據的存儲。現在,有你可能不知道的,commit()方法,apply()方法,PS:知道的童鞋,自行繞道哈,不瞭解的可以繼續看下去
commit方法,
有boolean類型返回值
當兩個Edtior操作同一數據進行存儲時,最終存儲的數據,屬於最後一個調用commit()的Editor
commit()是同步存儲數據的
apply()方法,
沒有返回值
apply()是先將數據保存到內存中,然後再異步的存儲到磁盤上,同時apply()沒有存儲成功或者失敗的返回提示
由於在實際開發中,SharePrefrence在應用中是單例的,忽略返回值的情況下,apply()替代commit()是安全的
谷歌建議,不考慮返回值,如果是在應用的主線程使用SharePrefrence存儲數據,最好使用apply()代替commit()