与元素类型 “item” 相关联的 “name” 属性值不能包含"<” 字符解决办法

Android构建时报错:

app:lintVitalRelease[Fatal Error] :3:214: 与元素类型 “item” 相关联的 “name” 属性值不能包含 ‘<’ 字符。

Could not read /Users/panxin/Library/Android/sdk/platform-tools/api/annotations.zip

java.io.IOException: Could not parse XML from android/accounts/annotations.xml

原因:sdk下/platform-tools/api/annotations.zip这个文件里的xml文件不规范造成的。
 

annotations.xml 这个文件报错,那么就打开这个文件看一下。

annotations.zip 解压之后得到android,根据报错信息找到报错的文件。

发现: 
  <item name="android.accounts.AccountManager android.accounts.AccountManagerFuture&lt;android.os.Bundle&gt; addAccount(java.lang.String, java.lang.String, java.lang.String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback<android.os.Bundle>, android.os.Handler)">
 

比如修改后的一段:

  <item name="android.accounts.AccountManager android.accounts.AccountManagerFuture&lt;android.os.Bundle&gt; addAccount(java.lang.String, java.lang.String, java.lang.String[], android.os.Bundle, android.app.Activity, android.accounts.AccountManagerCallback&lt;android.os.Bundle&gt;, android.os.Handler)">
    <annotation name="androidx.annotation.RequiresPermission">

看到了吧 ,<>  里面带有 <>.  这个在xml里是不允许的。

自己修改:1、用记事本打开报错的文件(看报错信息android/accounts/annotations.xml),并且把标签内的 ‘<’ 和 ‘>’ 字符分别替换成 "&lt;” 和 “&gt;”

2、修改完之后,保证 <>,里没有<>后保存,替换annotations.zip里报错的文件,回到项目再次编译。

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值