Android应用XML报错‘XML has an empty body’,求问题排查与解决
解决XML报错「XML has an empty body」的问题
嘿,作为Android应用开发新手遇到这种XML报错完全不用慌,我来帮你定位问题并解决它!
问题根源
看你提供的Manifest代码,报错的原因出在这一行:
<activity android:name=".DailerActivity"></activity>
这个<activity>标签用了成对写法,但内部没有任何子元素(比如intent-filter、配置属性的子节点等)。虽然严格来说XML语法允许这种空的成对标签,但Android Studio这类IDE会把这种情况判定为「empty body」并抛出报错。
解决方案
你可以选择以下两种方式修复:
- 方式一:改为自闭合标签
把空的成对标签改成自闭合形式,这是XML中表示空元素的标准写法,IDE就不会再报错了:
<activity android:name=".DailerActivity" />
- 方式二:补充必要配置(如果后续需要)
如果你之后打算给这个DailerActivity添加启动模式、主题或者启动意图等配置,直接在成对标签内补充内容即可,示例如下:
<activity android:name=".DailerActivity" android:theme="@style/AppTheme.NoActionBar" android:launchMode="singleTop"> <!-- 这里可以添加intent-filter等子元素 --> </activity>
额外排查:IDE缓存误报
如果修改后仍然报错,大概率是IDE缓存导致的误报,你可以试试这两步:
- 点击顶部菜单栏
File -> Invalidate Caches...,选择「Invalidate and Restart」重启IDE - 执行
Build -> Clean Project清理项目,再点击Build -> Rebuild Project重新构建
内容的提问来源于stack exchange,提问作者EugeneS
相关产品推荐
相关产品推荐

