微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我应该何时将数据保存到我的Android应用程序中的SQLite中?

我正在观看谷歌的一个应用程序评论,他们正在抓住这个有保存按钮的人的应用程序,如果你在离开之前没有保存就会弹出一个对话框.他们说Android应用程序应该保存而不是打扰用户.

我有一个片段,有几个字段,需要确定何时将数据保存到sqlite数据库.我想通过onFocusChange事件保存每个字段的退出?或者也许这种情况经常发生?也许片段的onPause事件?我应该什么时候保存(具体事件请)?

解决方法:

碎片非常类似于生命周期中的活动.因此onPause()是保存持久状态的正确位置,稍后在onPause()之后它可能为时已晚并且可能导致数据丢失. Google建议使用“就地编辑”用户模型.也就是说,在用户在输入字段之间切换时保存数据的情况下,立即保存编辑是一种很好的方法.如果您的片段/活动被系统杀死,这可以防止数据丢失.如果您认为保存状态可能需要几秒钟,那么您也可以在onPause()中使用IntentService.在您的场景中,当用户在输入字段之间切换时,我会执行AsyncTask更新数据库,可能会检测是否确实发生了更改.

编辑:如果您使用的是ContentProvider而不是考虑使用AsyncQueryHandler而不是AsyncTask.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐