1

我可以將推送通知從Firebase Console Notifications發送到我的iOS設備,它可以完美地作爲前臺和後臺的應用程序。Firebase-admin不發送iOS APN通知

當我嘗試使用Firebase-admin by NodeJS發送它們時,它只在應用程序處於前景時才起作用,在後臺沒有任何反應。

我認爲FCM-APN之間的通信很好,因爲它與控制檯一起工作。

這是我的代碼的NodeJS:

function sendFCM(registration_ids, data, collapseKey) { 

    const options = { 
     priority: "high", 
     collapseKey : collapseKey, 
     contentAvailable : true, 
     timeToLive: 60 * 60 * 24 
    }; 

    const payload = { 
     data: data, 
     notification: { 
      title: "My title", 
      text: "My description", 
      sound : "default" 
     } 
    } 

    admin.messaging().sendToDevice(registration_ids, payload, options) 
     .then(function(response) { 
      console.log("Successfully sent message:", response); 
     }) 
     .catch(function(error) { 
      console.log("Error sending message:", error); 
     }); 
} 

你覺得這是怎麼回事?你知道一些方法來記錄這個問題嗎?

回答

1

Server Protocol documentation表示通知文本的關鍵是body而不是text。看看這個改變是否有所作爲:

const payload = { 
    data: data, 
    notification: { 
     title: "My title", 
     body: "My description", // <= CHANGE 
     sound : "default" 
    } 
} 
+0

謝謝!有兩次失敗。首先,你說的那個。其次,firebase json很糟糕:(開發太多小時... – Georgevik