如何在Cordova中获取FCM代币?

问题描述 投票:0回答:2
我尝试在 Android 移动应用程序中实现推送通知。使用

cordova-plugin-firebase-messaging
我可以使用firebase控制台向android手机发送推送通知,但是那些已安装的apk文件会发生什么,所有都接收推送通知,但我想发送给特定用户,所以我想获得FCM令牌。

我尝试过,在“index.js”文件中,onDeviceReady 函数我调用以下函数来获取令牌。

document.addEventListener('deviceready', onDeviceReady, false); function onDeviceReady() { FCMPlugin.onTokenRefresh(function(token){ alert( token ); }); FCMPlugin.getToken(function(token){ alert(token); }); }
当我构建并安装 apk 文件并在移动设备中打开时,但打开设备时没有任何显示。
我的 Cordova 版本是 11.0.0
安装的插件是

cordova-plugin-fcm-with-dependecy-updated 7.8.0 "Cordova FCM Push Plugin"
非常感谢任何回复。

问候 阿拉文

cordova cordova-plugins
2个回答
1
投票
您需要添加以下脚本来初始化firebase设置

<script type="module"> // Import the functions you need from the SDKs you need import { initializeApp } from "https://www.gstatic.com/firebasejs/9.10.0/firebase-app.js"; import { getAnalytics } from "https://www.gstatic.com/firebasejs/9.10.0/firebase-analytics.js"; // TODO: Add SDKs for Firebase products that you want to use // https://firebase.google.com/docs/web/setup#available-libraries // Your web app's Firebase configuration // For Firebase JS SDK v7.20.0 and later, measurementId is optional const firebaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_AUTH_DOMAIN (get it from your firebase project)", databaseURL: "YOUR_FIREBASE_DB_PATH", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_STORAGE_BUCKET", messagingSenderId: "YOUR_SENDERS_ID", appId: "YOUR_APP_ID", measurementId: "G-4TN45ZQFFJ" }; // Initialize Firebase const app = initializeApp(firebaseConfig); const analytics = getAnalytics(app); </script>
确保您已完成以下操作

  1. 创建了一个 Firebase 项目,并直接从项目设置窗口获取上述代码(Firebase 提供了一项规定,可以显示上面的代码以及您的凭据,只需复制该代码并粘贴到您的 index.html 页面上)

  2. 您必须从 Firebase 项目下载的 google-services.json 需要位于根目录中。

  3. 完成所有操作后,您需要使用以下代码:

cordova.plugins.firebase.messaging.getToken().then(function(token) { //将令牌保存在服务器上的表中。将有效负载发送到该令牌。

}

  1. 保存令牌并发送通知后,您将需要捕获通知,如下所示。

    cordova.plugins.firebase.messaging.onBackgroundMessage(函数(有效负载)

    { //对收到的有效负载/收到的通知执行一些操作

    }
    
    

0
投票
您需要使用后端将通知发送到 Firebase 端点,将其发送到 Firebase

https://fcm.googleapis.com/fcm/send


    

© www.soinside.com 2019 - 2024. All rights reserved.