1

我有一個簡單的應用程序與兩個活動:登錄活動和主要活動。通知 - 活動序列

通常,登錄活動將用戶數據發送到主活動。但是,有時我會收到直接導致主要活動的通知。問題在於我直接進入主要活動,因爲我沒有任何用戶數據。 這裏是一個小的概述:

登錄活動--user數據 - >主要活動< - 沒有用戶數據 - 通知

什麼是解決這個問題的最好辦法情況?

+0

將用戶數據添加到消息負載中。 –

+1

它的工作原理是10x!我想這是唯一的方式 –

+0

酷。我注意到你在回答。但我會繼續,並添加我的答案。 –

回答

0

按我的意見發送給用戶(或任何其他數據),你可以把用戶的詳細信息在你的消息有效載荷,特別是在data有效載荷。

但是,您必須確保您只向相應的用戶發送敏感數據。在您的樣本有效內容中,您正在向主題發送詳細信息,這意味着訂閱該主題的所有用戶都會收到該主題。

我能想到的另一個解決方法是隻發送一個特定的ID,然後在打開活動時,讓它從您的服務器獲取詳細信息。我認爲這更安全。

+1

聽起來很公平。但是,我僅向每個用戶訂閱以其用戶名命名的主題,以便他可以收到個人通知。我認爲那沒關係。 –

0

由於AL。提示您可以在有效載荷

https://fcm.googleapis.com/fcm/send 
Content-Type:application/json 
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA 
{ 
    "to": "/topics/foo-bar", 
    "data": { 
    "message": "This is a Firebase Cloud Messaging Topic Message!", 
    "user": { 
     "id": 1, 
     etc... 
    } 
    } 
}