如果我使用startForeground(myID,不是)啓動服務,可以在不停止前臺進程的情況下替換另一個服務嗎?我的意思是,我有一個服務在服務結束前會連續執行兩個任務,並且我希望在第一次結束時通知用戶,而不需要停止前臺服務?Android前臺服務通知替換
另外,是否有可能在沒有通知(即NULL)的情況下啓動前臺服務。
任何stretegy我可以使用,而不是?謝謝。
如果我使用startForeground(myID,不是)啓動服務,可以在不停止前臺進程的情況下替換另一個服務嗎?我的意思是,我有一個服務在服務結束前會連續執行兩個任務,並且我希望在第一次結束時通知用戶,而不需要停止前臺服務?Android前臺服務通知替換
另外,是否有可能在沒有通知(即NULL)的情況下啓動前臺服務。
任何stretegy我可以使用,而不是?謝謝。
在NotificationManager
有方法cancel(int)
接收notificationId,所以你可以取消舊的通知並創建一個新的通知。
但問題是如果我取消傳遞給startForeground(id,not)的ID,它是否會將服務從前臺返回到正常服務...... – Tibor 2011-12-15 14:22:49
您的問題的一般答案是使用NotificationManager.notify()方法在啓動服務時使用傳遞給startForground()方法的相同ID。
另外值得注意:
請參考盧卡給出的答案和CommonsWare的答案下的討論,以及Lorne Laliberte和dmmh給出的答案。
How do I update the notification text for a foreground service in Android?
Does updating a Notification remove a Service's foreground status?
它可以用NULL開始通知前臺服務,但可能不會解決你的問題。 – 2017-08-29 20:32:30