我的目标是使用 flutter 将 FCM 消息发送到包含在文档映射中的多个令牌。当前代码使用“全部发送”功能,并按预期发送给所有人。我希望插入一个 widget.document.[token] 或类似的参考将只发送到文档/列表中包含的所有项目。 Firebase 使用 sendAll 发送到特定设备,所以我希望这能奏效。
使用文档(令牌)引用不会返回错误,但也不会返回消息
使用仅包含令牌的快照会返回一个错误,即只能传递静态项目,以及一些语法问题
使用 api/http 返回错误 posturl 返回 null
除了尝试上述方法外,我还研究了其他人尝试过的方法。
以下是我的一些错误:
尝试调用:
[错误:flutter/lib/ui/ui_dart_state.cc(157)] 未处理的异常:NoSuchMethodError:方法 '[]' 在 null 上被调用。
尝试调用: post(" https://fcm.googleapis.com/fcm/send ", body: "{\"token\":null,
这是我的数据库结构的图片:
最后,这是我的代码:
import 'package:chat/screens2/alert_widget.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:geo_firestore/geo_firestore.dart';
import 'package:geolocator/geolocator.dart';
import 'package:chat/api/messaging.dart';
import 'package:chat/models/messages.dart';
import 'package:flutter/widgets.dart';
class SendAlert extends StatefulWidget {
static const String id = 'send_alert';
final Message message;
final url;
final body;
final title; …Run Code Online (Sandbox Code Playgroud)