我有一个需要作为前台服务运行的服务。为此,必须将通知链接到该通知。
启动服务时,我将OnGoing设置为true,并且当用户与Notification进行交互以停止服务时,我想将当前Notification更改为OnGoing(false)。(因此,用户可以根据需要关闭该通知)。我希望该通知仍然可见,以便用户可以从该通知中再次启动该服务。
通常,我将不得不使用NoficiationManager来使用具有特定ID的.Notify,然后对其进行修改。但是,通过调用StartForeground(标志,通知),没有设置ID的选项。
如何将OnGoing(true)通知(从StartForeground调用开始)修改为OnGoing(false)?
我认为您的想法是正确的:您必须使用一个ID,然后使用该ID更新通知。
startForeground方法的第一个字段不是标志,而是ID。这里签名:
void startForeground (int id, Notification notification)
这里的文件
因此,您可以使用相同的ID更新通知。
mNotificationManager.notify(sNotificationId, notification);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句