从Google AppEngine调用FCM后端服务时出错

时间:2018-05-11 13:28:21

标签: google-app-engine firebase-cloud-messaging

我正在使用FCM设置我的第一个应用程序(我们使用GCM)并按照教程进行操作。我在GAE Standard上有一个Android应用程序和一个基于servlet的应用程序。为了测试它,有一个servlet向应用程序发送消息。

这是几个小时前工作的,我可以调用servlet并在应用程序上收到测试消息,但现在我只在FirebaseMessaging.getInstance()中获得异常.sendAsync(message).get()方法< / p>

pgsql

com.google.firebase.messaging.FirebaseMessagingException: Error while calling FCM backend service

有时是一个,有时是另一个。

这是GAE servlet调用的方法。我已经检查过我使用的令牌是否正确,而且它是Android设备中当前活动的令牌。

java.net.UnknownHostException: accounts.google.com

2 个答案:

答案 0 :(得分:0)

原来问题是GAE上这个特定项目的计费被禁用了。一旦启用它再次工作(我仍然低于免费套餐,所以没有增加实际成本)

答案 1 :(得分:0)

在某些情况下,您可能一次订阅多个主题。火力基地有指数级的退缩。我是从这里的链接派生出来的。 https://firebase.google.com/docs/cloud-messaging/android/topic-messaging

Topic messaging supports unlimited subscriptions for each topic. However, FCM enforces limits in these areas:
One app instance can be subscribed to no more than 2000 topics.
If you are using batch import to subscribe app instances, each request is limited to 1000 app instances.
The frequency of new subscriptions is rate-limited per project. If you send too many subscription requests in a short period of time, FCM servers will respond with a 429 RESOURCE_EXHAUSTED ("quota exceeded") response. Retry with exponential backoff.