我正在编写一个小笔记本应用程序,用户可以在其中输入文本备注,这些备注将保存到文件系统中。
我想知道持久性和电池寿命之间的平衡是什么(就频繁的I / O而言)
我希望确保用户在停电时体验到最小的损失。 该要求表明,在输入每个字符后,应该执行对文件系统的刷新(使用一些限制)
另一方面,这种策略会耗费太多电池。
那么耐用性和性能的合适应该是什么?
答案 0 :(得分:2)
不频繁的文件I / O不会对电池寿命造成太大影响。即使每10秒一次,如果你正确地做到这一点,电池消耗也不会那么大(即当你的应用程序离开屏幕时禁用计时器[或其他],检查你真的需要在计时器触发时保存,等等)。
话虽如此,每次击键后的文件I / O都是过多的。以下是一些想法:
这是一个非常简单的电池更换意图过滤器的链接:
http://www.tutorialforandroid.com/2009/01/getting-battery-information-on-android.html
答案 1 :(得分:1)
我认为您想要做的就是在EditText中添加TextWatcher。当postText更改被调用后发布一个延迟到处理程序的消息。如果在处理该消息之前发生了其他编辑,请删除该消息。否则,在处理消息时保存内容。也许将时间延迟设置为5-10秒,您可能只是将写入次数减少了一个数量级。