天天看点

onstartCommand 返回值说明

1. START_STICKY:

  服务所在进程被kill后,将保留服务的状态为开始状态,但是不保留传入的Intent;随后系统会重新尝试启动service,并且会调用onStartCommand(Intent,int,int)方法;

2. START_NOT_STICKY:

服务启动后,所在进程被kill后,如果么有新的intent启动请求,服务会被移除掉开始的状态,并且系统也不会尝试重新启动服务,除非通过Context.startService启动服务;

系统不重新启动服务,当然也不会执行onStartCommand方法;

3.START_REDELIVER_INTENT:

服务启动后,所在进程被kill,随后系统会重新启动服务,并且最后一个Intent请求会被传递到onStartCommand方法执行。

除非调用了stopSelf方法,否则Intent请求就回尝试重新投递;