无法解析符号com.google.firebase.messaging.Message [英] Cannot resolve symbol com.google.firebase.messaging.Message
问题描述
我正在下面的链接上实施Firebase Messaging,以将消息发送到多个设备
I'm following the below link to implement Firebase Messaging to send messages to multiple devices
https://firebase.google.com/docs/cloud-messaging/android/send-multiple#build_send_requests
我几乎完成了实现,但是只是停留在最后一个阶段(构建发送请求)
I'm almost done with the implementation but just stuck at the last stage (Build send requests)
在下面的代码中
Message message = Message.builder()
.putData("score", "850")
.putData("time", "2:45")
.setTopic(topic)
.build();
我收到错误Cannot resolve symbol 'Message'
也在线
String response = FirebaseMessaging.getInstance().send(message);
当我按住Ctrl键并单击send()方法时,参数message
被显示为RemoteMessage
而不是Message
的实例,返回类型为void
而不是String
When I Ctrl+click the send() method, the argument message
is being shown as instance of RemoteMessage
and not Message
with return type of void
and not String
我是否缺少任何依赖关系,或者最新的Firebase消息传递库中的实现是否发生任何变化?
Am I missing any dependencies or is there any change in implementation in the latest library of firebase messaging?
我正在我的应用程序级别build.gradle
中使用以下(最新)Firebase版本
I'm using the following (latest) Firebase version in my app level build.gradle
implementation 'com.google.firebase:firebase-messaging:19.0.1'
implementation 'com.google.firebase:firebase-core:17.0.1'
推荐答案
Message
类位于Firebase管理员sdk中,但是您不能在android项目中使用它,只能在服务器端使用firebase admin sdk.那么您将能够使用Message
类.检查文档以供参考:-
The Message
class is inside the Firebase admin sdk but you cannot use that in your android project, you can only use firebase admin sdk in the server side and then you will be able to use the Message
class. Check the docs for reference:-
https://firebase.google.com/docs/cloud-messaging/manage-topics
要使用admin sdk,您需要一个像Tomcat
这样的服务器,还应该使用Java版本8,然后可以按照以下教程进行操作:-
To be able to use the admin sdk, you need a server like Tomcat
, you should also use java version 8, then you can follow the following tutorial:-
https://firebase.google.com/docs/admin/setup/#prerequisites
原始答案
您需要使用RemoteMessage
类,例如:
RemoteMessage message = RemoteMessage.builder()
.addData("score", "850")
.addData("time", "2:45")
.build();
在此处查看更多信息:
https://firebase.google.com/docs/reference/android/com/google/firebase/messaging/RemoteMessage
https://firebase.google.com/docs/reference/android/com/google/firebase/messaging/RemoteMessage.Builder.html
这篇关于无法解析符号com.google.firebase.messaging.Message的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!