【发布时间】:2017-01-12 21:17:22
【问题描述】:
如果一个 Service 使用不同的 Intent 多次调用 startService(),当应用程序因内存不足而被终止后重新启动时,它与 START_REDELIVER_INTENT 的行为如何?
示例:我用不同的Intents 呼叫startService(intent, class) 三次。在服务自行停止之前,操作系统会因内存使用而终止应用程序或服务。稍后,服务返回。根据 START_REDELIVER_INTENT onStartCommand() 应该使用启动它的原始 Intent 调用。这三个都会被调用吗?只有第一个?只有最后一个?
我考虑过对其进行测试,但我想知道预计会发生什么,而不仅仅是我的特定设备会做什么。谢谢!
【问题讨论】:
-
我认为它应该通过
stopSelf()的单参数版本重新交付您未标记为已完成的所有内容。不过,docs for it 在这个话题上很模糊。