我对以下有关服务使用的文字感到困惑(来自官方文件)
“ 如果某个组件调用bindService()
创建服务,而未调用onStartCommand()
,则该服务仅在该组件与其绑定的时间内运行。所有的客户,系统都会销毁它。”
来源:https://developer.android.com/guide/components/services
文字是否意味着我们不必在致电startService()
之前致电bindService()
(以创建服务)?
请给我解释一下。
谢谢
答案 0 :(得分:1)
这是您在正式文件中提到的问题的答案:
尽管本文档通常单独讨论启动的服务和绑定的服务,但是您的服务可以以两种方式工作-它可以启动(无限期运行)并且还允许绑定。只需实现两个回调方法即可:onStartCommand()允许组件启动它,onBind()允许绑定。
这意味着当您以绑定方式启动服务时,该服务将运行直到相关组件存在,但是当您通过调用startService启动服务时,该服务将无限期运行。