當大多數時間發送上游消息時,消息不會到達我的服務器,並且即使接收到消息的服務器onMessageSent(String msgId)
函數未被調用(onMessageReceived(RemoteMessage fcmMessage)
工作得很好)。Firebase上游消息
爲什麼不調用該函數,爲什麼需要發送10個上游消息才能從Firebase雲消息傳遞到我的服務器?
new AsyncTask<Void, Void, String>() {
@Override
protected String doInBackground(Void... params) {
String sendTo = SENDER_ID + "@gcm.googleapis.com";
RemoteMessage.Builder data = new RemoteMessage.Builder(sendTo);
data.addData("Hello", "World");
try {
for (int i = 0; i < 10; i++) {
Thread.sleep(1000);
String messageID = getRandomString();
data.setMessageId(messageID);
Logger.d(TAG, "messageID: " + messageID);
FirebaseMessaging.getInstance().send(data.build());
}
} catch (Exception e) {
Logger.e(TAG, "Error sending upstream message: " + e.getMessage());
return "Error sending upstream message:" + e.getMessage();
}
return null;
}
@Override
protected void onPostExecute(String result) {
if (result != null) {
Logger.e(TAG, "send message failed: " + result);
}
}
}.execute(null, null, null);
}
我從firebase-cloud-messaging獲取消息,但是我必須發送更多然後一條消息才能獲取它(這就是for-loop的原因)。 –
而將調用鏈接到setter方法並沒有幫助。 –