您的位置:首页 > 移动开发 > Android开发

android开发中遇到的一些问题

2018-01-29 11:15 281 查看

记录android开发中遇到的一些问题

activity发生异常程序重启是怎样的机制?比如程序有3层activity,当第3层的activity发生异常后app会重启到上两层也就是第1层activity,以此类推,第4层activity发生异常会重启到第2层activity;第1、2层activity发生异常app不会重启。(注:activity都是继承与AppCompatActivity,如果第1层activity含有多个fragment,当第3层activity发生异常后如果第1层activity没有做任何处理fragment会错乱重叠,这是因为AppCompatActivity继承与FragmentActivity,而FragmentActivity的onCreate(Bundle savedInstanceState)和onSaveInstanceState(Bundle outState)方法记录一些fragment的信息,因此可以用重写onSaveInstanceState方法并且方法中不错任何处理(注掉super.onSaveInstanceState)可以暂时解决这类问题,但是也损失了其他的重要信息)网上还有一种解决方法:使用UncaughtExceotionHandler捕获异常然后使程序完全退出,这样重启时就像正常启动一个app。这里只记载了问题的表象和解决方法,至于是怎样的重启机制还需要继续探索(要官方的或者是源代码的)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: