Service.startForeground() vs 通知管理器.notify(),给出不同的行为。
使用时notify使用两个不同的通知 ID,创建 2 个通知 -Good.
当做同样的事情时启动前台,一个通知会覆盖另一个通知 -Bad.
测试设备:Nexus S(2.3.6) 和 Asus Transformer (4.0.3)。
有什么想法可以运行可以有多个(动态数字)通知的重要(前台)服务吗?
嗯,这不是最好的解决方案,但您始终可以将通知“重新分配”到已取消的通知 ID。例如,假设您启动进程 1(前台),然后启动进程 2(使用NotificationManager)。当进程 1 结束时,关闭进程 2 的通知并更新进程 1 的前台通知,以实际显示进程 2 的进度。
这样你就不用打电话了stopForeground()
and startForeground()
,这可能允许服务在两者之间被终止(尽管尚未实际检查这是真的)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)