前言

最近测试反馈,播放音乐的信息断电时偶尔不记忆。

项目中的记忆是使用sharedpreferences的,sharedpreferences是以xml文件保存,保存的位置在:

/data/data/[包名]/shared_prefs

测试反馈的关键字[断电]、[偶尔]和[不记忆],也就是说这问题是概率性的出现。

参考网友说的,修改后就没有出现问题了。

记录于此,方便自己查一下。

正文

引用《sharedpreferences同步问题》中[sharedpreference掉电异常]内容

使用sharedpreference保存文件后掉电会出现异常,是由于sharedpreference在保存记录的时候会生成一个bak文件,当保存完成后会删除这个文件,但是删除的时机不确定,这个时候掉电会导致文件没有删除,再次开机后使用sharedpreference时会将源文件删除,将bak文件替换成源文件,就会出现文件没有保存上的情况

上面原文作者说会存在bak文件,这个我查看目录是没看到这个bak文件。

我们知道,操作写入文件内容时,不会时时刻刻的flush到文件中,这样效率就低了,因此都是先保存到缓存,最后保存。

还有数据库也是这样

external.db
external.db-shm
external.db-wal

当.db-shw和.db-wal缓存到一定的大小后,就会写入到.db里面去。

因此,为了解决[sharedpreference掉电异常]问题,我们可以保存SharedPreferences数据后,主动sync一下。

隐藏内容!
付费阅读后才能查看!
2
3
多个隐藏块只需支付一次

 历史上的今天

  1. 2024: MediaMetadataRetriever解析媒体文件元数据(0条评论)
  2. 2024: 记录Ubuntu更新命令(0条评论)
  3. 2023: MediaPlayer JNI层介绍(0条评论)
  4. 2019: 朱光潜:像个大人一样生存,像个孩子一样生活(0条评论)
  5. 2018: [摘]Android SD卡挂载状态(0条评论)
版权声明 1、 本站名称: 笔友城堡
2、 本站网址: https://www.biumall.com/
3、 本站部分文章来源于网络,仅供学习与参考,如有侵权,请留言

暂无评论

暂无评论...

随机推荐

Android String根据指定长度进行截取文本

前言在做自定义TextImageView时,画的文本长度存在过长,因此需要跟进ImageView的宽度进行限制Text的宽度,也就引出需要新需求:根据Text文本长度进行裁剪PS: Button 本来是支持图片+Text的组合显示的,但是Glide需要传入ImageView,因此才有TextI...

佚名:人就这么一生,要学会把握自己

人就这么一生,要学会把握自己人这一辈子,有多少无可奈何,邂逅多少恩恩怨怨。可是想到人不就这么一辈子吗,有什么看不开的? 人世间的烦恼忧愁,恩恩怨怨几十年后,不都烟消云散了,还有什么不能化解,不能消气的呢? 人就这么一生,我们不能白来这一遭。所以让我们从快乐...

Windows软件开机多个

前言有时候软件需要多开,只开一个操作不方便,比如Notepad++进行日志查询时,多开一个可以拖入其他更多的文件,因此想是开启多个界面。正文百度和谷歌后发现真的有人这么干,如下。找到一个Notepad++的快捷方式(桌面或启动菜单中)属性,选中"Shortcut"(快捷键) Tab,编辑 T...

jaudiotagger解析ID3第四版

前言前面介绍过《jaudiotagger解析ID3第三版》,然后后面又继续优化。当然,效果跟第三版差不多,但个人觉得写法更好,记录于此,方便自己查阅。阅读jaudiotagger源码进行对之前的代码优化。正文导入jaudiotagger.jar导入lib库/libs/jaudiotag...

余光中:月光光

月光光,月是冰过的砒霜月如砒,月如霜落在谁的伤口上?恐月症和恋月狂迸发的季节,月光光幽灵的太阳,太阳的幽灵死星脸上回光的反映恋月狂和恐月症祟着猫,祟着海祟着苍白的美妇人 太阴下,夜是死亡的边境偷渡梦,偷渡云现代远,古代近恐月症和恋月狂太阳的膺币,铸两面侧像&...

Android ACTION_MEDIA_BUTTON的监听

前言这里记录一下普通应用监听MediaButton的使用。正文直接上代码,下面代码是测试过的。当获取到焦点时,调用registerMediaButton,丢失焦点时unRegisterMediaButton隐藏内容!付费阅读后才能查看!¥3多个隐藏块只需支付一次付费阅读参考文章《...