我正在尝试使用Firebase-Notification API,当我将下游消息从控制台发送到应用程序时,该服务是完美的,但如何向主题注册用户发送消息?
我在android方面做过
FirebaseMessaging.getInstance().subscribeToTopic("TopicName");
但当我尝试从控制台向主题发送下游消息时,它说
This project does not have any topics
编辑:我发现在映射主题后,最多需要1天才能显示在Firebase控制台中
4 回答
这是一条替代路径 .
如果您将客户端应用程序订阅到一个不存在的主题,那么也将创建该主题,而无需调用任何firebase URL请求 .
它还需要几个小时才能在Firebase控制台上显示 .
通过使用谷歌共享示例:https://github.com/firebase/quickstart-android/tree/master/messaging您可以确认相同 .
首先,假设
IID_TOKEN
是您的注册令牌并且TOPIC_NAME
是您要创建的主题,则需要通过向 POST 请求创建主题要检查您创建的主题,请在此网址上发出 GET 请求
并在您的请求标头中插入您的API_KEY
您的主题最多需要 1 day 才会显示在Firebase控制台中,以便进行测试时您可以进行卷曲请求或使用像Advanced REST client这样的软件
Firebase需要时间在控制台中创建新主题 . 就我而言,4小时后创建了新主题 .
您可以使用http api创建主题:
https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME
1. IID_TOKEN =设备注册令牌,您可以在Android设备上使用以下命令找到它:
2.TOPIC_NAME =新主题名称
3.Authorization: key=YOUR_API_KEY . 在 Headers 中设置此参数 . 截图:Creating new topic via Advanced rest client
YOUR_API_KEY:console.firebase.google.com
并发送请求,您将收到http状态“确定” .
然后,您可以使用以下api获取当前项目中所有主题的信息:
这里需要在请求 Headers 中添加授权密钥,您将收到主题列表:response info topics
I recommend read this article about Instance ID/Server by Google