9
您如何通过CURL向所有设备发送Firebase通知?
我正在尝试向所有应用程序用户发送通知(在Android上),实际上是在重复通过Firebase管理控制台发送通知时发生的情况。这是我开始的CURL命令: curl --insecure --header“ Authorization:key = AIzaSyBidmyauthkeyisfineL-6NcJxj-1JUvEM” --header“ Content-Type:application / json” -d“ {\” notification \“:{\” title \“:\” note -Title \“,\” body \“:\” note-Body \“}}”“ https://fcm.googleapis.com/fcm/send 这是解析出来的JSON,在您看来更容易: { "notification":{ "title":"note-Title", "body":"note-Body" } } 返回的响应只是两个字符: 至 就是这样,单词“ to”。(标题报告为400)我怀疑这与JSON中没有“ to”有关。人们甚至会为“到”做些什么?我没有定义主题,设备还没有注册任何东西。但是,他们仍然能够从Firebase管理面板接收通知。 由于Firebase通知处理的惊人局限性,我想尝试“仅数据” JSON包,即如果您的应用程序位于前台,则通知将由您的处理程序处理,但是如果您的应用程序位于后台,则它将得到由Firebase服务内部处理,并且从未传递给您的通知处理程序。显然,如果您通过API提交了通知请求,则可以解决此问题,但是仅当您仅使用数据时才可以解决。(这将破坏用同一条消息处理iOS和Android的能力。)在我的任何JSON中用“数据”替换“通知”均无效。 好的,然后我在这里尝试解决方案:Firebase Java Server将推送通知发送到所有设备 ,在我看来,这是“尽管可以通过管理控制台向所有人进行通知,但实际上不可能通过API进行通知。 ” 解决方法是让每个客户端都订阅一个主题,然后将通知推送到该主题。所以首先在onCreate中的代码: FirebaseMessaging.getInstance().subscribeToTopic("allDevices"); 然后我发送新的JSON: { "notification":{ "title":"note-Title", …