activity+ViewPager+Fragment 程序启动时候加载的日志

activity+ViewPager+Fragment 程序启动时候加载的日志

*第一种情况:viewPager设置预加载的个数*

08-15 17:02:40.467 2141-11653/? I/ActivityManager: START u0 {cmp=com.kekelian/.HealthPush} from uid 10701 on display 0
08-15 17:02:40.550 18540-18540/com.kekelian I/HealthPush: HealthPush—->onCreate()
08-15 17:02:40.888 18540-18540/com.kekelian I/HealthPush: HealthPush—->onStart()
08-15 17:02:40.889 18540-18540/com.kekelian I/HealthPush: HealthPush—->onResume()
08-15 17:02:40.912 18540-18540/com.kekelian I/HealthPush: CourseItemFragment0—->onAttach()
CourseItemFragment0—->onCreate()
UnitTestFragment—->onAttach()
UnitTestFragment—->onCreate()
08-15 17:02:41.064 18540-18540/com.kekelian I/HealthPush: UnitTestFragment—->onCreateView()
08-15 17:02:41.067 18540-18540/com.kekelian I/HealthPush: UnitTestFragment—->onActivityCreated()
08-15 17:02:41.180 18540-18540/com.kekelian I/HealthPush: CourseItemFragment0—->onCreateView()
08-15 17:02:41.181 18540-18540/com.kekelian I/HealthPush: CourseItemFragment0—->onActivityCreated()
CourseItemFragment0—->onStart()
CourseItemFragment0—->onResume()
CourseItemFragment1—->onAttach()
CourseItemFragment1—->onCreate()
08-15 17:02:41.184 18540-18540/com.kekelian I/HealthPush: CourseItemFragment1—->onCreateView()
CourseItemFragment1—->onActivityCreated()
08-15 17:02:41.185 18540-18540/com.kekelian I/HealthPush: CourseItemFragment2—->onAttach()
CourseItemFragment2—->onCreate()
08-15 17:02:41.188 18540-18540/com.kekelian I/HealthPush: CourseItemFragment2—->onCreateView()
CourseItemFragment2—->onActivityCreated()
08-15 17:02:41.189 18540-18540/com.kekelian I/HealthPush: CourseItemFragment3—->onAttach()
CourseItemFragment3—->onCreate()
08-15 17:02:41.193 18540-18540/com.kekelian I/HealthPush: CourseItemFragment3—->onCreateView()
CourseItemFragment3—->onActivityCreated()
08-15 17:02:41.193 18540-18540/com.kekelian I/HealthPush: UnitTestFragment—->onStart()
UnitTestFragment—->onResume()
08-15 17:02:41.194 18540-18540/com.kekelian I/HealthPush: CourseItemFragment1—->onStart()
CourseItemFragment1—->onResume()
CourseItemFragment2—->onStart()
CourseItemFragment2—->onResume()
CourseItemFragment3—->onStart()
CourseItemFragment3—->onResume()
08-15 17:02:41.442 2141-2371/? I/ActivityManager: Displayed com.kekelian/.HealthPush: +947ms
08-15 17:02:41.695 2141-2371/? I/Timeline: Timeline: Activity_windows_visible id: ActivityRecord{5b5b85b u0 com.kekelian/.HealthPush t6314} time:116141859

根据上述日志分析:
先执行Activity的生命周期的oncreate()==>onStart()===>onresume();
然后执行的各个Fragment的onAccach()==>oncreate()===>oncreateView()====>onActivityCreated()
接着执行Fragment各自的onstart()===>onresume();

屏幕熄灭的日志

08-15 17:03:54.091 18540-18540/com.kekelian I/HealthPush: UnitTestFragment—->onPause()
CourseItemFragment0—->onPause()
CourseItemFragment1—->onPause()
CourseItemFragment2—->onPause()
CourseItemFragment3—->onPause()
08-15 17:03:54.143 18540-18540/com.kekelian I/HealthPush: UnitTestFragment—->onStop()
CourseItemFragment0—->onStop()
CourseItemFragment1—->onStop()
08-15 17:03:54.144 18540-18540/com.kekelian I/HealthPush: CourseItemFragment2—->onStop()
CourseItemFragment3—->onStop()
HealthPush—->onStop()
这里可以看到先执行Fragment的onStop()后执行Activity的onStop()的方法

屏幕重新启动的日志

08-15 17:04:32.999 18540-18540/com.kekelian I/HealthPush: HealthPush---->onRestart()

08-15 17:04:33.011 18540-18540/com.kekelian I/HealthPush: UnitTestFragment—->onStart()
08-15 17:04:33.016 18540-18540/com.kekelian I/HealthPush: CourseItemFragment0—->onStart()
08-15 17:04:33.017 18540-18540/com.kekelian I/HealthPush: CourseItemFragment1—->onStart()
CourseItemFragment2—->onStart()
CourseItemFragment3—->onStart()
HealthPush—->onStart()
08-15 17:04:33.019 18540-18540/com.kekelian I/HealthPush: HealthPush—->onResume()
UnitTestFragment—->onResume()
CourseItemFragment0—->onResume()
CourseItemFragment1—->onResume()
CourseItemFragment2—->onResume()
CourseItemFragment3—->onResume()

重新启动的时候先执行Activity的OnRestart()紧接着执行Fragement的onStart();
再执行Activity的OnResume后执行Fragment的onresume();

滑动iewpager时Fragmemt的生命周期的日志:
不执行任何生命周期**

按home键的生命周期 的日志

08-15 17:10:50.854 21412-21412/com.kekelian I/HealthPush: UnitTestFragment—->onPause()
CourseItemFragment0—->onPause()
CourseItemFragment1—->onPause()
CourseItemFragment2—->onPause()
CourseItemFragment3—->onPause()
08-15 17:10:50.925 21412-21412/com.kekelian I/HealthPush: UnitTestFragment—->onStop()
CourseItemFragment0—->onStop()
CourseItemFragment1—->onStop()
CourseItemFragment2—->onStop()
CourseItemFragment3—->onStop()
HealthPush—->onStop()

销毁Activity的生命周期的日志:

08-15 17:12:06.799 2141-11708/? W/ActivityManager: Duplicate finish request for ActivityRecord{3f48492 u0 com.kekelian/.HealthPush t6316 f}

08-15 17:12:06.800 21412-21412/com.kekelian I/HealthPush: UnitTestFragment—->onPause()
08-15 17:12:06.801 21412-21412/com.kekelian I/HealthPush: CourseItemFragment0—->onPause()
08-15 17:12:06.802 21412-21412/com.kekelian I/HealthPush: CourseItemFragment1—->onPause()
CourseItemFragment2—->onPause()
CourseItemFragment3—->onPause()
08-15 17:12:07.214 21412-21412/com.kekelian I/HealthPush: UnitTestFragment—->onStop()
CourseItemFragment0—->onStop()
CourseItemFragment1—->onStop()
08-15 17:12:07.215 21412-21412/com.kekelian I/HealthPush: CourseItemFragment2—->onStop()
CourseItemFragment3—->onStop()
HealthPush—->onStop()
08-15 17:12:07.216 21412-21412/com.kekelian I/HealthPush: UnitTestFragment—->onDestroyView()
08-15 17:12:07.218 21412-21412/com.kekelian I/HealthPush: UnitTestFragment—->onDestroy()
UnitTestFragment—->onDetach()
CourseItemFragment0—->onDestroyView()
08-15 17:12:07.219 21412-21412/com.kekelian I/HealthPush: CourseItemFragment0—->onDestroy()
08-15 17:12:07.220 21412-21412/com.kekelian I/HealthPush: CourseItemFragment0—->onDetach()
CourseItemFragment1—->onDestroyView()
08-15 17:12:07.221 21412-21412/com.kekelian I/HealthPush: CourseItemFragment1—->onDestroy()
CourseItemFragment1—->onDetach()
CourseItemFragment2—->onDestroyView()
08-15 17:12:07.222 21412-21412/com.kekelian I/HealthPush: CourseItemFragment2—->onDestroy()
CourseItemFragment2—->onDetach()
CourseItemFragment3—->onDestroyView()
08-15 17:12:07.223 21412-21412/com.kekelian I/HealthPush: CourseItemFragment3—->onDestroy()
CourseItemFragment3—->onDetach()
08-15 17:12:07.224 21412-21412/com.kekelian I/HealthPush: HealthPush—->onDestroy()

总结
创建Activity的过程则先执行Activity对应的生命周期后执行Fragment的对应的生命周期。
销毁Activity的过程则先执行Fragmet对应的生命周期后执行Activity的对用生命周期**

默认预加载机制的生命周期

08-16 09:31:52.751 2141-28775/? I/ActivityManager: START u0 {cmp=com.kekelian/.HealthPush} from uid 10701 on display 0
08-16 09:31:52.848 30763-30763/com.kekelian I/HealthPush: HealthPush—->onCreate()
08-16 09:31:53.156 30763-30763/com.kekelian I/HealthPush: HealthPush—->onStart()
08-16 09:31:53.157 30763-30763/com.kekelian I/HealthPush: HealthPush—->onResume()
08-16 09:31:53.176 30763-30763/com.kekelian I/HealthPush: CourseItemFragment1—->onAttach()
CourseItemFragment1—->onCreate()
UnitTestFragment—->onAttach()
UnitTestFragment—->onCreate()
08-16 09:31:53.254 30763-30763/com.kekelian I/HealthPush: UnitTestFragment—->onCreateView()
08-16 09:31:53.256 30763-30763/com.kekelian I/HealthPush: UnitTestFragment—->onActivityCreated()
08-16 09:31:53.331 30763-30763/com.kekelian I/HealthPush: CourseItemFragment1—->onCreateView()
CourseItemFragment1—->onActivityCreated()
CourseItemFragment1—->onStart()
CourseItemFragment1—->onResume()
CourseItemFragment0—->onAttach()
CourseItemFragment0—->onCreate()
08-16 09:31:53.335 30763-30763/com.kekelian I/HealthPush: CourseItemFragment0—->onCreateView()
CourseItemFragment0—->onActivityCreated()
08-16 09:31:53.335 30763-30763/com.kekelian I/HealthPush: CourseItemFragment2—->onAttach()
CourseItemFragment2—->onCreate()
08-16 09:31:53.337 30763-30763/com.kekelian I/HealthPush: CourseItemFragment2—->onCreateView()
CourseItemFragment2—->onActivityCreated()
08-16 09:31:53.338 30763-30763/com.kekelian I/HealthPush: CourseItemFragment3—->onAttach()
CourseItemFragment3—->onCreate()
08-16 09:31:53.340 30763-30763/com.kekelian I/HealthPush: CourseItemFragment3—->onCreateView()
08-16 09:31:53.341 30763-30763/com.kekelian I/HealthPush: CourseItemFragment3—->onActivityCreated()
08-16 09:31:53.341 30763-30763/com.kekelian I/HealthPush: UnitTestFragment—->onStart()
UnitTestFragment—->onResume()
CourseItemFragment0—->onStart()
CourseItemFragment0—->onResume()
CourseItemFragment2—->onStart()
CourseItemFragment2—->onResume()
CourseItemFragment3—->onStart()
CourseItemFragment3—->onResume()
08-16 09:31:53.626 2141-2371/? I/ActivityManager: Displayed com.kekelian/.HealthPush: +842ms
08-16 09:31:53.892 2141-2371/? I/Timeline: Timeline: Activity_windows_visible id: ActivityRecord{f6e579e u0 com.kekelian/.HealthPush t6326} time:120835248

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值