You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在应用进程被杀死时仍接收Firebase Cloud Messaging消息?

FCM在定制ROM进程被杀后无法触发onMessageReceived的问题

现象

  • 原生Android设备上,无论应用处于前台还是后台状态,使用常规FCM监听服务代码时,都能正常触发onMessageReceived方法,Logcat会输出onMessageReceived: called日志。
  • 但在MIUI、ColorOS、OneUI这类定制化Android系统设备上,当应用进程被杀死后,后台状态下不会触发onMessageReceived方法,导致无法接收FCM消息。

常规FCM消息监听实现代码

class MyFcmListenerService : FirebaseMessagingService() {
    override fun onMessageReceived(remoteMessage: RemoteMessage) {
        Log.d("TAG","onMessageReceived: called")
    }
} 

问题根源

这类定制ROM普遍存在严格的后台进程管控机制,当应用进程被系统杀死后,FCM的监听服务无法被系统唤醒,进而无法触发onMessageReceived回调。

内容的提问来源于stack exchange,提问作者Siddharth Shakya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 11:49:53