使用START_STICKY启动后服务进程终止后onStartCommand

ads*_*tro 14 android

我一直在阅读Android文档,我想知道是否有人可以了解服务实例在START_STICKY启动时服务实例发生的事情已经被杀死了.我假设本地状态数据(实例变量)也丢失了.在重新创建服务时,Android是否会做任何事情来帮助重新填充本地状态?

我有一些在意图中发送到服务的数据.在onStateCommand()中,我将根据intent中的内容填充服务的实例数据.根据我在Android文档中读到的内容,当服务被终止并重新启动时(传递给START_STICKY),传递给onStartCommand()的意图将为null.这是否意味着在重新创建服务时我丢失了intent和service的成员数据?

Fal*_*rri 16

当一个进程被终止并重新创建时,它会再次经历整个生命周期(从onCreate开始).根据它的杀死方式以及如何保存数据,它可能会或可能不会对您有用.

至于获得意图,有一个标志START_REDELIVER_INTENT,将重新启动意图.