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

Flutter项目AndroidManifest.xml出现多项属性配置报错

AndroidManifest 报错修复方案

现有配置的核心错误

  • flutterEmbedding 元数据位置错误:该标签用于声明Flutter引擎嵌入版本,必须作为<application>标签的直接子节点,不能放在<activity>内部。位置错误会导致Manifest解析规则失效,连带触发大量属性不合法的误报。
  • 包名使用占位符未替换:根节点package="com.packagename"是模板默认占位符,和项目实际包名不匹配时,系统无法找到对应路径下的MainActivity类,触发Unresolved class 'MainActivity'报错。
  • 应用名资源引用错误:android:label="@string/activity_name"引用的是Activity名称资源,应用全局名称应引用@string/app_name,资源不匹配会触发隐性编译错误。

修正后的完整配置

<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="替换为项目实际的应用包名">
  <uses-permission android:name="android.permission.INTERNET" />
  <application 
    android:label="@string/app_name" 
    android:usesCleartextTraffic="true" 
    android:icon="@mipmap/ic_launcher">
    <!-- flutterEmbedding标签移至此处,作为application的直接子节点 -->
    <meta-data android:name="flutterEmbedding" android:value="2" />
    <activity 
      android:name=".MainActivity" 
      android:launchMode="singleTop" 
      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" />
      <meta-data android:name="io.flutter.embedding.android.SplashScreenDrawable" android:resource="@drawable/launch_background" />
      <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
      </intent-filter>
    </activity>
  </application>
</manifest>

配置修正后仍报错的排查步骤

如果改完配置依旧出现大量Attribute xxx is not allowed here报错,属于IDE索引或文件路径错误,按以下顺序排查:

  • 确认编辑的是正确路径的Manifest文件:Flutter主Manifest路径为android/app/src/main/AndroidManifest.xml,不要修改debug、profile目录下的构建变体专用Manifest,这类文件不允许配置应用图标、启动模式这类全局属性,强行添加就会报属性不允许错误。
  • 打开项目时要选择Flutter项目根目录,不要单独打开android子目录,等待IDE底部索引进度条走完再操作。
  • 依次执行flutter clean、flutter pub get命令,之后点击IDE菜单栏 File -> Invalidate Caches... 勾选清除缓存并重启,等待重新索引完成后报错会自动消失。
  • 若仍提示MainActivity未解析,检查android/app/src/main/kotlin(或java目录)下MainActivity的文件路径,是否和Manifest中填写的package属性完全匹配,不一致时调整路径或修改package属性保持一致即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 23:45:44