我有一个intentService
而onHandleIntent()
我在开始时调用startForeground()
,在方法结束时调用stopForeground
。当我打电话给stopForeground(false)
时,即使我指定保留它,也会删除通知。文档说:
“如果您在服务仍然在前台运行时停止服务,则通知也会被删除。”
因此,当intentService
因某种原因调用stopSelf()
时,服务再次处于前台状态。正确行为的唯一方法是在stopForeground(true)
之后创建新通知。我错过了什么吗?
答案 0 :(得分:-3)
在IntentService
完成工作后,onHandleIntent
会自动停止。如果IntentService
已停止,您为什么要继续显示通知?听起来你应该使用常规的Service
来控制对stopSelf
的调用。
无论您是否致电stopSelf
,通过致电stopForeground
都会自动删除通知 ,这是完全合理的。服务已经完成。