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

Flutter集成通知时Android Manifest合并失败问题求助

解决Flutter Manifest合并错误问题

错误原因

你给FlutterFirebaseMessagingService标签添加了tools:replace="android:label",但未给该Service指定android:label属性;同时Manifest根标签缺少tools命名空间声明,导致tools:前缀的属性无法被识别,这两个问题共同引发了合并错误。

修复步骤

  1. 在Manifest根标签添加tools命名空间,确保tools:前缀属性能被正常解析
  2. 给FlutterFirebaseMessagingService标签添加android:label属性,值可与application的label保持一致(比如示例中的"kpop")

修改后的完整AndroidManifest.xml代码

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"> <!-- 新增tools命名空间 -->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

    <application
        android:label="kpop"
        android:name="${applicationName}"
        android:icon="@mipmap/ic_launcher">
        <service
            android:name="io.flutter.plugins.firebase.messaging.FlutterFirebaseMessagingService"
            android:exported="true"
            android:label="kpop" <!-- 新增android:label属性 -->
            tools:replace="android:label">
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT" />
            </intent-filter>
        </service>

        <activity
            android:name=".MainActivity"
            android:exported="true"
            android:launchMode="singleTop"
            android:taskAffinity=""
            android:theme="@style/LaunchTheme"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
            android:hardwareAccelerated="true"
            android:windowSoftInputMode="adjustResize">
            <meta-data
              android:name="io.flutter.embedding.android.NormalTheme"
              android:resource="@style/NormalTheme"
              />
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        <meta-data
            android:name="flutterEmbedding"
            android:value="2" />
    </application>
    <queries>
        <intent>
            <action android:name="android.intent.action.PROCESS_TEXT"/>
            <data android:mimeType="text/plain"/>
        </intent>
    </queries>
</manifest>

额外排查建议

如果修复后仍有合并错误,可以尝试:

  • 执行flutter clean清理项目缓存,再重新构建
  • 检查firebase_messaging和flutter_local_notifications的版本是否与当前Flutter版本兼容

内容的提问来源于stack exchange,提问作者Pratik Nandeshwar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.17 06:45:10