错误: <item> 内部元素必须是资源引用或为空



将Gradle 升级到版本 4 后,我无法编译我的项目。 Android Studio 抛出错误:

安卓资源编译失败 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1475:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1477:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1478:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1479:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1480:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1481:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1482:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1483:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1493:错误:内部元素必须是资源引用或为空。 C:\Users\user\AndroidStudioProjects\grow_director_v2_net\app\build\intermediates\incremental\mergeDevDebugResources\merged.dir\values\values.xml:1714:警告:忽略具有未知命名空间"http://schemas.android.com/apk/res/android"的元素"g"。

通过此链接 a 具有以下属性:

<item name="animator" type="id">false</item>
<item name="date_picker_day" type="id">false</item>
<item name="date_picker_header" type="id">false</item>
<item name="date_picker_month_and_day" type="id">false</item>
<item name="day_picker_selected_date_layout" type="id">false</item>
<item name="month_text_view" type="id">false</item>

我没有设置所有这些属性。

我已经看到了这些问题:

  • Android - 内部元素必须是资源引用或为空
  • 更新后安卓资源编译失败

编译SdkVersion 28 supportLibVersion = "28.0.0" 类路径 'com.android.tools.build:gradle:3.3.0-alpha13'

更新 IDE 后我也遇到了同样的错误。我能够通过将其添加到字符串资源来解决它。

第一:我改变这个

<item name="animator" type="id">false</item>

<item name="animator_false" type="id"/>

其次:我添加了

<string name="animator_false">false</string>

到字符串.xml。 问题解决了。

我的项目包括一个不适用于Android Studio 3.2.0的库"Android-RecurrencePicker"。 作者更新他的库存在一个问题 - https://github.com/Shusshu/Android-RecurrencePicker/issues/17#issuecomment-428330873。

最终,解决方案是下载此 3D 派对库进行投影并包含在本地项目中。在此之后,我手动更改了依赖项并重构了该库的代码。

最新更新