当应用被杀死时,FCM可以在所有设备上正常工作,但vivo,oppo除外。 我尝试在应用程序的设置中启用自动启动,但是仍然无法正常工作。 我们会因为更长的时间而陷入这一问题。 任何帮助,将不胜感激。 在此先感谢!
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
AppLog.e(TAG, "Firebase From: " + remoteMessage.getFrom());
if (remoteMessage == null) return;
// Check if message contains a notification payload.
if (remoteMessage.getNotification() != null) {
AppLog.e(TAG, "Firebase Notification Body: " + remoteMessage.getNotification().getBody());
}
// Check if message contains a data payload.
if (remoteMessage.getData().size() > 0) {
AppLog.e(TAG, "Firebase Data Payload: " + remoteMessage.getData().toString());
handleDataMessage(remoteMessage.getData());
}
}
答案 0 :(得分:2)
FCM不能在终止状态下工作。 例如Vivo,Oppo,Mi等 问题是这些ROM默认情况下会阻止应用程序的通知,除了一些带有白色标签的应用程序(例如Fb,Whatsapp)。这些应用大多数都与ROM捆绑在一起。其中一些拥有自己的推送通知服务。
要使其在这些ROM上工作,请尝试以下建议:
使用通知有效负载代替数据有效负载。您可以尝试从FCM测试页向Vivo / Oppo设备发送测试通知,并在尝试实施该功能之前检查它是否对您有用。
如果您仍想使用数据有效载荷: