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

AndroidManifest.xml解析错误致构建任务失败,求解决方案实现无错构建

AndroidManifest.xml meta-data属性含<字符的构建错误解决

错误信息

  • 核心错误:与元素类型“meta-data”关联的属性“android:value”的值不得包含 '<' 字符
  • 失败任务::app:processDebugMainManifest
  • 异常详情:
    com.android.manifmerger.ManifestMerger2$MergeFailureException: 解析D:\Skripsi\StoryAppFinal\app\src\main\AndroidManifest.xml时出错
    

已尝试操作

  • 使用--stacktrace选项获取堆栈跟踪
  • 使用--info/--debug选项查看详细日志
  • 使用--scan选项获取完整构建洞察

解决步骤

1. 转义XML特殊字符

XML属性值中不能直接使用<、>这类特殊字符,需要替换为对应的转义实体:

  • 将<替换为&lt;
  • 将>替换为&gt;

示例:
原错误写法:

<meta-data
    android:name="api_config"
    android:value="<base-url>https://your-api-domain.com</base-url>" />

修正后:

<meta-data
    android:name="api_config"
    android:value="&lt;base-url&gt;https://your-api-domain.com&lt;/base-url&gt;" />

2. 改用CDATA包裹(适用于复杂XML格式内容)

如果android:value需要存放XML结构的内容,可通过CDATA块包裹,注意在XML属性中需要转义CDATA的标签:

<meta-data
    android:name="api_config"
    android:value="&lt;![CDATA[<base-url>https://your-api-domain.com</base-url>]]&gt;" />

3. 迁移到资源文件(更优方案)

避免在Manifest中直接写复杂内容,将需要的字符串存入res/values/strings.xml:

<!-- strings.xml -->
<string name="api_base_url"><![CDATA[<base-url>https://your-api-domain.com</base-url>]]></string>

然后在Manifest中引用:

<meta-data
    android:name="api_config"
    android:value="@string/api_base_url" />

完成以上修改后,重新执行Clean Project和Rebuild Project即可解决构建错误。

内容的提问来源于stack exchange,提问作者Farhan Adi Saputra

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 18:57:16