今天发现了个问题,对于在fragment中的定时器,app在后台运行,发现定时器继续工作,因此,了解了下其生命周期,对定时器进行控制。结果如下:
以fragment为例,
app第一次启动,加载fragment,执行:
construct(这里指的是构造函数)
onCreate
onStart
onResume
不同activity之间的切换:
离开:
onPause
onStop
回来:
onStart
onResume
同一个activity 但是不同fragment之间的切换
离开:
onPause
onStop
回来:
onCreate
onStart
onResume
按下home键
离开:
onPause
回来:
onResume
退出APP:
onPause
等待几秒后,执行onStop
发现当加载的时候,都有onStart但是不一定要 onCreate,而离开的时候,一定要有onPause
以此,把定时器的创建放在onCreate, onPause的时候,则执行定时器的onCancle函数,取消定时器。
成功解决问题。