1

クラウド機能を使用して私の反応アプリにFCMを送信しようとしています。 クラウド機能が実行されていますが、クライアント側で通知を受信して​​いません。Firebaseクラウドメッセージ/通知が受信されません。 JS

ここでは雲機能コードです。ここで

exports.sendPush = functions.database.ref('/settings2').onWrite(event => { 
    let projectStateChanged = false; 
    let projectCreated = false; 
    let projectData = event.data.val(); 
    if (!event.data.previous.exists()) { 
     projectCreated = true; 
    } 
    if (!projectCreated && event.data.changed()) { 
     projectStateChanged = true; 
    } 
    let msg = 'A project state was changed'; 
     if (projectCreated) { 
      msg = `The following new project was added to the project: ${projectData.title}`; 
     } 
    tokens.push("fIGxxxxGtDGxxxx DEVICE Token"); 
    let payload = { 
     notification: { 
      title: 'Firebase Notification', 
      body: 'This Is Message', 
      sound: 'default', 
      badge: '1' 
     } 
    }; 
    return admin.messaging().sendToDevice(tokens, payload); 
}); 

は、クラウド機能

enter image description here

そして、ここでのログは私のクライアント側のコードです:

messaging.onMessage(function(payload) { 
    console.log("Message received. ", payload); 
     // ... 
}); 

は、すべてのエラーはありませんが、何もコンソールではありません。サービスワーカーファイルで何かする必要がありますか?

ご協力いただければ幸いです。

答えて

0

firebase-messaging-sw.jsファイルに問題がありました。私は次のコードでこれを解決しました。

importScripts('https://www.gstatic.com/firebasejs/3.9.0/firebase-app.js'); 
importScripts('https://www.gstatic.com/firebasejs/3.9.0/firebase-messaging.js'); 

var config = { 
    apiKey: "AIzaSyDtg4aQMQW67Jla1nUzrTTSEhVqpUeqKXI", 
    authDomain: "payxxxxxxx.firebaseapp.com", 
    databaseURL: "https://pxyxxxxx.firebaseio.com", 
    projectId: "pxxoll-pxxxs-fxxx", 
    storageBucket: "pxxx-pxxx-fxxxx1.apxxxot.com", 
    messagingSenderId: "2xxxx5xxx" 
    }; 
    firebase.initializeApp(config); 


const messaging = firebase.messaging(); 
関連する問題