Activity生命周期:
通过方法调用实现Activity状态的迁移
创建---->运行 onCreate onStart onResume
运行---->关闭/销毁 onPause onStop onDestroy
运行---->暂停 onPause ---->恢复 onResume
运行---->停止 onPause onStop---->恢复 onRestart onStart onResume
暂停或停止--->强制销毁--->重新运行 onCreate
service生命周期:
注:如果已经startservice,再次start的话,会调用onbindservice。
绑定的服务会随着所绑定的那个activity的销毁而销毁,可以在bind的时候同时start,避免服务被自动销毁:
service的生命周期,从它被创建开始,到它被销毁为止,可以有两条不同的路径:
A started service
被开启的service通过其他组件调用 startService()被创建。
这种service可以无限地运行下去,必须调用stopSelf()方法或者其他组件调用stopService()方法来停止它。
当service被停止时,系统会销毁它。
A bound service
被绑定的service是当其他组件(一个客户)调用bindService()来创建的。
客户可以通过一个IBinder接口和service进行通信。
客户可以通过 unbindService()方法来关闭这种连接。
一个service可以同时和多个客户绑定,当多个客户都解除绑定之后,系统会销毁service。
本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1198592,如需转载请自行联系原作者