如果有使用sharedpreference保存數據後需要斷電的情況,保存完使用shell命令 sync,否則會保存失敗,主要是因爲會生成bak文件、後續補充
sharedpreference掉電異常
使用sharedpreference保存文件後掉電會出現異常,是由於sharedpreference在保存記錄的時候會生成一個bak文件,當保存完成後會刪除這個文件,但是刪除的時機不確定,這個時候掉電會導致文件沒有刪除,再次開機後使用sharedpreference時會將源文件刪除,將bak文件替換成源文件,就會出現文件沒有保存上的情況
解決方案
Runtime.getRuntime().exec(“sync”);
在執行完commit方式提交完數據之後,執行shelll命令sync會立刻更新flash,確保文件可以及時被刪除