关于service的生命周期的疑问

关于service的生命周期,我看书发现有3种情况,startService()、bindService()、先startAervice()再bindService(),他们所经历的生命周期都是不一样的。我很好奇为什么没有先bindService()再startService()这种情况?我发现不是一本书是这样的,求解。谢谢

阅读 1.9k
1 个回答

无论start还是bind都会经历判断Service是否创建, 如果未创建, 就会创建(onCreate方法执行), 然后在调用特定的方法比如果是start就会调用onStartCommand, 并且在没有调用stopService方法的时候, 该Service会一直处于正在运行状态, 如果是bind就会调用onBind方法, 如果unbindService方法调用后, 会调用Service的onUnbind方法, 同时会检查该Service是否在bind前还有其他调用者, 如果有, 该Service则不会停止, 如果没有, 该Service会自动停止(onDestory回调)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题