解决方案 »

  1.   

    兄弟,没看懂你的意思啊……
    我的意思是,由于onStartCommand()返回的是START_STICKY,所以我觉得在service被kill掉之后,必须重新启动此service才对(intent为null是另一码事,但是service的onCreate()等得被调用的啊)。
      

  2.   

    估计你看的是中文翻译吧。
    START_STICKY不是说service被kill掉就重启,而是说被系统kill掉重启,比如说内存过低,系统主动释放内存,这时是会重启的。
    像你这种主动行为不会。至于拔电池,这似乎和非法关机一样,系统肯定都没有记录结束前的状态,重启无从谈起。
    改用Broadcast receiver和alarmmanager结合方式防止被kill吧。特别你这种涉及关机后开机的。