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

Flutter项目Android端Firebase Messaging编译错误求助

Flutter Android端Firebase Messaging引用未解析编译错误解决方案

针对你遇到的Android端Application.kt中Firebase Messaging相关类(firebasemessaging、FlutterFirebaseMessagingService、FirebaseMessagingPlugin)未解析,导致:app:compileDebugKotlin失败的问题,可按以下步骤排查解决:

1. 修正Application.kt的包导入路径

检查Application.kt中的导入语句,确保路径正确:

import io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingService
import io.flutter.plugins.firebase.messaging.FirebaseMessagingPlugin

避免使用错误的包路径(比如旧版本的com.google.firebase.messaging或自定义错误路径)。

2. 确保App模块应用Google Services插件

在android/app/build.gradle文件末尾添加插件应用声明:

apply plugin: 'com.google.gms.google-services'

你的项目根build.gradle已经引入了google-services的classpath,但App模块需要显式应用该插件才能正确加载Firebase依赖。

3. 清理并重新同步依赖

执行以下命令清理项目并重新拉取依赖:

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

这可以解决依赖缓存或同步不完整导致的缺失问题。

4. 更新Gradle仓库配置

将android/build.gradle中的jcenter()替换为mavenCentral()(JCenter已停止维护):

allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

同时固定google-services版本,避免自动升级导致的兼容性问题:

// 在buildscript的dependencies中修改
classpath 'com.google.gms:google-services:4.4.0'

5. 验证AndroidManifest.xml配置

  • 确认自定义Application类已正确注册:
    <application
        android:name=".Application"
        <!-- 其他配置 -->
        >
    
  • 确保FlutterFirebaseMessagingService的服务声明存在:
    <service
        android:name="io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingService"
        android:exported="false">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT"/>
        </intent-filter>
    </service>
    

6. 检查Firebase配置文件

确认google-services.json已放置在android/app目录下,且文件中的package_name与android/app/build.gradle中的applicationId完全一致。

内容的提问来源于stack exchange,提问作者Surjeet Devgun

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 06:00:01