android service的生命周期

android的service的生命周期与activity类似,但是有一些不同:

onCreate和onStart的不同

service可以通过客户端调用Context.startService(Intent)启动。如果service还没有运行,则android先调用onCreate方法然后调用onStart方法。如果service已经运行,则通过一个新的intent调用onStart方法。所以,一个service的onStart方法可能会重复调用多次。

onResume, onPause和onStop不再需要

..

onBind

如果客户端需要和service保持连接,可以调用Context.bindService方法。如果此时service未运行,将调用onCreate而不是onStart方法。作为替代,调用onBind方法,将返回给客户端一个IBind接口实例,用于客户端进一步的调用service。

onDestory

android终止一个service可能是:

  • 没有客户端绑定该service或者与之相连的运行的客户端;
  • 内存低,如果是这样,android会在内存允许的情况下试图重新启动service
PDF格式創作    发送文章为PDF   

这篇文章上的评论的 RSS feed TrackBack URI

Leave a Reply