【发布时间】:2019-10-26 15:35:57
【问题描述】:
我正在使用 firebase 接收推送通知。我在第一次安装时获得了 FCM 令牌。在退出应用程序时,我将删除 FCM 令牌并在下次登录时生成一个新令牌。
一切正常,firebase 为我提供了一个新令牌。但是,我仍然无法收到来自 firebase 的通知。
以下是我正在使用的代码。
删除令牌
FirebaseInstanceId.getInstance().deleteInstanceId();
生成新令牌
FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener(new OnSuccessListener<InstanceIdResult>() {
@Override
public void onSuccess(InstanceIdResult instanceIdResult) {
token=instanceIdResult.getToken();
}
});
AndroidManifest.xml
<service
android:name="FirebaseMessaging.EDOFirebaseService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
请帮我找出问题所在。我正在遵循 firebase 文档中描述的所有步骤。
【问题讨论】:
-
请分享您从 firebase 发送的消息正文。
-
I can't receive notification from firebase来自 Firebase 控制台?从你的服务器?您是否将新令牌发送到您的服务器?当您的应用在前台时,您会处理 FCM 吗? -
来自服务器。是的,我已将新令牌发送到我的服务器。是的,我已经为前台处理了 FCM,并且我已经测试了一个带有调试断点的应用程序,onMessageReceived 没有被调用。 @EugenPechanec
-
@MayuriKhinvasara 我正在从服务器发送消息
-
请参阅此答案 (stackoverflow.com/a/58587480/1300813) 以了解服务器端消息的正确格式。
标签: android firebase push-notification firebase-cloud-messaging