1.AndroidManifest没有设置configChanges属性
竖屏启动:
onCreate -->onStart-->onResume
切换横屏:
onPause -->onSaveInstanceState -->onStop -->onDestroy -->onCreate-->onStart -->
onRestoreInstanceState-->onResume -->onPause -->onStop -->onDestroy
(Android 6.0 Android 7.0 Android 8.0)
横屏启动:
onCreate -->onStart-->onResume
切换竖屏:
onPause -->onSaveInstanceState -->onStop -->onDestroy -->onCreate-->onStart -->
onRestoreInstanceState-->onResume -->onPause -->onStop -->onDestroy
(Android 6.0 Android 7.0 Android 8.0)
总结:没有设置configChanges属性Android 6.0 7.0 8.0 系统手机 表现都是一样的,当前的界面调用onSaveInstanceState走一遍流程,然后重启调用onRestoreInstanceState再走一遍完整流程,最终destory。2.AndroidManifest设置了configChanges android:configChanges="orientation"
竖屏启动:

本文详细探讨了在AndroidManifest中不设置或设置configChanges属性为orientation、orientation|keyboardHidden、orientation|screenSize、orientation|keyboardHidden时,Activity在横竖屏切换时的生命周期变化。在不同Android版本上,系统行为有所差异,如Android 6.0-8.0在处理横竖屏切换时,有的版本会触发完整生命周期,有的只会调用onConfigurationChanged。
最低0.47元/天 解锁文章
565

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



