0

我將推送通知系統與Firebase集成到我的項目中,除了一件事情之外它運行良好。FCM通知無效如果我通過使用ARC(高級REST API)發送它

如果我嘗試從火力地堡控制檯發出通知,使用設備令牌&主題,通知顯示設備。 如果我嘗試使用設備令牌從ARC(高級REST客戶端)發送通知,則通知將顯示在設備中。 如果我嘗試使用我的主題發送來自ARC(高級REST客戶端)的通知,沒有任何問題。

Requested URL : https://fcm.googleapis.com/fcm/send 
RAW headers : 
    Content-Type: application/json 
    Authorization: key=AIz..... 
RAW PAYLOAD : 
    { 
    "data": 
    { 
    "employeename":"kumaran","empid":"234444" 
    }, 
    "to":"/topics/bmmembers" 
    } 
Response Header 
Status : 200: OK 
JSON : 
{ 
"message_id": 6536474446058224000 
} 

但我的設備沒有收到任何通知和檢查logcat的任何JSON無論是在客戶抵達終點,但沒有收到。 任何想法和我們如何解決這個問題。

+0

嗨。在使用設備令牌進行發送時(爲了進行比較),請張貼您的代碼片段以接收消息和樣本有效負載。 :) –

+0

您確定用戶/設備訂閱了該主題嗎? – asadmshah

+0

FirebaseMessaging.getInstance()。subscribeToTopic(「employee」);我添加了這個代碼。 Timebeing我訂閱了2個設備,並通過Firebase控制檯發送了通知 – Kumaran

回答

1

這是一個「發現這個問題解決方案」我的試驗和錯誤類型: -發現

問題是「爲特定的服務器密鑰或證書或全谷歌API帳戶本身配額可能已過期或使用了限制。「 下面我已解釋了我是如何再次成功地通過圖像爲相同的Android應用程序成功接收FCM Notifiaction的。

問題: - 我無法從高級REST客戶端發送FCM推送通知(含圖片),通過使用我很老了創建的項目(例如,從谷歌API控制檯產生的Android金鑰:我的項目;這有5個應用程序及其憑據)。 我試過從ARC客戶端發送Post請求很多時間,但dint在我的Android Mobile中收到任何單個FCM通知。

解決方案,我發現: -

1A。我在Google API控制檯中刪除了與該特定應用相關的憑證(API密鑰,服務器密鑰,Web密鑰,OAuth密鑰等)(例如:FCM App1)。

1b。此外,我去了Firebase控制檯,並刪除了其項目中的特定應用程序。 最後現在應用程序(例如.FCM App1)不包含與 1.Google API控制檯和 2.Firebase控制檯的連接。

1c。我也從Android studio-> Project文件夾中刪除了「google-services.json」文件(如果您無法刪除它,請嘗試執行File - >'Invalidate cache and restart'選項,然後重試刪除它。 。被刪除)

接下來,新鮮

  1. 我創建了一個新的Gmail帳戶,並打開新的谷歌API帳戶,在谷歌API帳戶進一步開放一個全新的項目(例如:我的PROJECT1) 。

  2. 接下來,我去火力控制檯登錄並與這個新創建的Gmail帳戶,那麼打開一個全新的項目,選擇「添加應用程序」,並選擇「Android」的。

- >輸入我的軟件包名稱,SHA1鍵並添加了應用程序。 - >還下載了新的谷歌服務。json文件並在Android Studio中的Project文件夾中再次添加。

- >然後按照前面的步驟進行操作。

==>最後,我在新的Google API控制檯中獲得了新的「」服務器密鑰「」。複製此服務器密鑰並粘貼到高級REST客戶端的授權:key = AIzaSyAJzs-DDD ......等。

=>從日誌中添加了爲此應用程序新創建的正確的TokenID。在ARC和WOOOOWWWW

===>按下SEND按鈕....

幾秒鐘內I GOT與圖像相FCM NOTIFICATION IN MY Android移動EVENTHOUGH MY APP是背景或在該完全關閉時間....!!!

+0

實際的問題是服務器密鑰。現在嘗試並重新創建,它的工作很好。謝謝 – Kumaran