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

Flutter集成FCM报错:FlutterFcmService - failed to find callback

我之前也碰到过这个问题!这个Fatal: failed to find callback错误虽然不影响通知接收,但确实挺闹心的,本质是后台的FlutterFcmService找不到正确的插件注册回调导致的。结合你的配置,我给你几个亲测有效的修复步骤:

1. 修正Application类的插件注册逻辑

你当前的registerWith方法只手动注册了FirebaseMessagingPlugin,但这种方式很容易遗漏其他依赖插件,导致后台服务调用时找不到完整的回调上下文。把它改成用GeneratedPluginRegistrant自动注册所有插件:

修改后的Java Application类:

import io.flutter.app.FlutterApplication;
import io.flutter.plugin.common.PluginRegistry;
import io.flutter.plugin.common.PluginRegistry.PluginRegistrantCallback;
import io.flutter.plugins.GeneratedPluginRegistrant;
import io.flutter.plugins.firebasemessaging.FlutterFirebaseMessagingService;

public class Application extends FlutterApplication implements PluginRegistrantCallback {
    @Override
    public void onCreate() {
        super.onCreate();
        FlutterFirebaseMessagingService.setPluginRegistrant(this);
    }

    @Override
    public void registerWith(PluginRegistry registry) {
        // 替换成自动注册所有插件,避免遗漏
        GeneratedPluginRegistrant.registerWith(registry);
    }
}

2. 移除手动指定的Android端Firebase依赖版本

你在应用级build.gradle里手动添加了firebase-messaging和firebase-analytics的依赖,但firebase_messaging插件会自动管理对应的Android依赖版本,手动指定很容易出现版本不兼容的问题。直接删除这两行:

// 删掉这两行手动指定的依赖
implementation 'com.google.firebase:firebase-analytics:17.5.0'
implementation 'com.google.firebase:firebase-messaging:20.2.4'

插件会自动引入和firebase_messaging: ^7.0.0匹配的依赖版本。

3. 清理项目缓存并重新构建

旧缓存经常会导致插件注册异常,执行以下命令彻底清理后重新运行:

flutter clean
flutter pub get
cd android && ./gradlew clean
cd .. && flutter run

4. 确认Flutter端初始化逻辑(可选)

你的configure代码没问题,但可以确保应用启动时插件已正确初始化。如果后续出现其他初始化问题,可以在main函数里添加:

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  // 若项目依赖firebase_core,需添加这行(7.x版本的firebase_messaging可能不需要)
  // await Firebase.initializeApp();
  runApp(MyApp());
}

做完这些步骤后,再从Firebase控制台推送前台通知,那个恼人的错误应该就消失了!

内容的提问来源于stack exchange,提问作者Cyrus the Great

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 21:17:46