gpt4 book ai didi

android - 在 flutter 中向特定用户firebase发送通知

转载 作者:行者123 更新时间:2023-12-04 23:47:01 24 4
gpt4 key购买 nike

当一个用户按下按钮时,如何向另一个用户发送通知?有人可以给我看一个代码 fragment 吗?
我意识到这个问题以前被问过,但是,由于有“几个答案”,所以它被关闭了。提供的类似链接未解释在 中发送通知的原因。 flutter .

最佳答案

为此,您将需要 Firebase 云消息传递。
我的做法是使用 云功能 您可以通过 HTTP 甚至通过 Firestore 触发器触发,如下所示:


// The Firebase Admin SDK to access Firestore.
const admin = require('firebase-admin');
admin.initializeApp();

const db = admin.firestore();

/**
* Triggered by a change to a Firestore document.
*
* @param {!Object} event Event payload.
* @param {!Object} context Metadata for the event.
*/
exports.messageNotificationTrigger = (change, context) => {

db.collection('users').get().then((snapshot) => {
snapshot.docs.forEach(doc => {

const userData = doc.data();

if (userData.id == '<YOUR_USER_ID>') {
admin.messaging().sendToDevice(userData.deviceToken, {
notification: {
title: 'Notification title', body: 'Notification Body'}
});
}
});
});
};
您在 中注册的每个用户用户 集合必须有一个设备 token ,从他们访问应用程序的设备发送。
来自 Flutter,使用 FCM 包,这是您将设备 token 发送到 Firebase 的方式:
// fetch the device token from the Firebase Messaging instance
// and store it securely on Firebase associated with this user uid
FirebaseMessaging.instance.getToken().then((token) {
FirebaseFirestore.instance.collection('users').doc(userCreds.user!.uid).set({
'deviceToken': token
});
});

在哪里 userCredentials.user!.uid 是您使用 登录应用程序的用户Firebase 身份验证 像这样:
UserCredential userCreds = await FirebaseAuth.instance.signInWithCredential(credential);
希望有帮助。

关于android - 在 flutter 中向特定用户firebase发送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71299214/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com