首页 > 解决方案 > FirebaseMessagingService 销毁太快

问题描述

我已将 FCM 添加到我的应用程序中,但遇到了奇怪的行为 - 的继承者FirebaseMessagingService几乎立即被销毁。
这种行为在真实设备(Nexus 5、Android 6.0.1)上是可重现的,但在模拟器上,一切正常。服务按预期工作,几乎不会立即销毁。

作为一种解决方法,我尝试以继承者的onMessageReceived方法启动我自己的服务。FirebaseMessagingService这适用于应用程序处于前台的情况。在这种情况下,我的支持服务启动并运行。但是,如果应用程序被终止,我的支持服务不会启动,从 Android 的角度来看,这可能是预期的行为。

似乎唯一的解决方案是从FirebaseMessagingService.onMessageReceived()应用程序启动时设置一些标志并启动一些检查器服务。其目的是每秒检查一次挂起的操作(例如)并执行实际工作。
这允许在推送同时出现在应用程序的前台和后台时覆盖这种情况。

有一个类似的问题 FirebaseMessagingService 扩展服务类在 android 7.1.1 设备中被破坏

我用implementation 'com.google.firebase:firebase-messaging:20.2.0'

任何帮助将不胜感激。

标签: androidfirebasefirebase-cloud-messaging

解决方案


有类似的问题。在我的情况下,禁用应用程序的电池优化很有帮助。


推荐阅读