避免在onSaveInstanceState中跳过帧

时间:2013-11-25 05:03:57

标签: android

我的应用程序向Web服务器查询要显示的数据,并将所有这些数据保存在onSaveInstanceState()中的outState Bundle中,以确保在每次屏幕旋转后我不必重新查询数据。但是,在每个屏幕旋转时,我现在得到LogCat错误,说“跳过93帧!应用程序可能在其主线程上做了太多工作。”,我认为这是因为关闭了我在onSaveInstanceState中捆绑的所有数据( )。我将onCreate()中的数据的unbundlinng移动到AsyncTask中以帮助解决类似的问题,但我不知道我是否可以在onSaveInstanceState()中执行相同的操作,而不会在保存数据之前结束活动。有没有一种正确的方法可以在屏幕旋转中保存所有网页数据而不会导致跳帧?

1 个答案:

答案 0 :(得分:0)

如果你在Serializable对象中存储了大量数据,你应该考虑让代表你数据的类实现Parcelable,因为它对打包/解包非常有效。

http://www.developerphil.com/parcelable-vs-serializable/