使用Fragment应用放置后台很久,被系统回收,出现crash;;
原因:系统做了源码FragmentActivity调用onSaveInstanceState保存Fragment对象,这时候系统恢复保存的Fragment,但是在FragmentActivity重新执行生命周期的时候,我们重新生成了fragment对象附件到该FragmentActivity,系统恢复的fragment和activity失去关联,出错;
处理:
方法1:在FragmrntActivity里oncreate方法判断saveInstanceState==null才生成新Fragment;否则不做处理;
方法2:在FragmentActivity里重写onSaveInstanceState方法,但不做实现;
当Fragment应用长时间置于后台被系统回收导致崩溃,本文介绍其原因及两种解决方案:通过判断非空状态来避免重复创建Fragment,或者重写onSaveInstanceState方法。
2059

被折叠的 条评论
为什么被折叠?



