1

onMessageReceived方法我將一些數據保存在本地數據庫中。在Android系統托盤中處理駁回的Firebase通知

如果應用程序在背景當我點擊通知時,它會將我重定向到啓動器活動。在那裏,我正在處理來自Bundle的傳入數據並將其保存在本地數據庫中。

如何在用戶解除通知時處理? 因爲如果用戶駁回通知,我從服務器收到的數據將丟失。

+0

你爲什麼不保存數據? –

+0

@DivyeshPatel我一收到數據就立即保存。但如果應用程序在後臺onMessageReceived不再被調用。 –

+0

因爲您正在使用通知。而是使用FCM的Data方法,它每次調用onMessageReceived時都會使用 –

回答

1

您可以通過添加deleteIntent到您的通知建設者處理解僱。 使用意圖,添加您收到的數據並將其重定向到處理程序類。 在處理程序中的類中提取數據並保存到DB :)

mBuilder.setDeleteIntent(PendingIntent.getService(this, 0, new Intent(this.context, YourHandlingClass.class), PendingIntent.FLAG_CANCEL_CURRENT)); 
1

消除對FCM的通知和使用的數據方法時它是固定的。

謝謝@DivyeshPatel

0

您可以直接保存onMessageReceived數據到本地數據庫,而不是等待用戶打開通知。

2.禁用自動取消,只要它接收onmessageReceived

notication.setAutoCancel(false)