AppCompat v7 r21 在 values.xml 中返回错误?

Posted

技术标签:

【中文标题】AppCompat v7 r21 在 values.xml 中返回错误?【英文标题】:AppCompat v7 r21 returning error in values.xml? 【发布时间】:2014-12-14 22:19:57 【问题描述】:

我正在使用 android Studio,当我将 compile "com.android.support:appcompat-v7:21.0.0" 添加到我的 Gradle 文件时,我遇到了大量错误:

C:\Users\WindowsSucks\AndroidStudioProjects\MMMeds\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v11\values.xml
Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
C:\Users\WindowsSucks\AndroidStudioProjects\MMMeds\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v14\values.xml
Error:(9, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(9, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(9, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
Error:(9, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'.
C:\Users\WindowsSucks\AndroidStudioProjects\MMMeds\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v21\values.xml
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Body1'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Body2'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Button'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Caption'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Display1'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Display2'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Display3'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Display4'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Headline'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Inverse'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Large'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Large.Inverse'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.PopupMenu.Large'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.PopupMenu.Small'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Medium'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Medium.Inverse'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Menu'.
Error:Error retrieving parent for item: No resource found that matches the given name '@android:TextAppearance.Material.SearchResult.Subtitle'.
Error:Error retrieving parent for item: No resource found that matches the given name '@android:TextAppearance.Material.SearchResult.Title'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Small'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Small.Inverse'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Subhead'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Title'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Menu'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Subtitle'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Subtitle.Inverse'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Title'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Title.Inverse'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionMode.Subtitle'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionMode.Title'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.PopupMenu.Large'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.PopupMenu.Small'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Button'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Subtitle'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.ActionBar.Title'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:ThemeOverlay.Material'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:ThemeOverlay.Material.ActionBar'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:ThemeOverlay.Material.Dark'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:ThemeOverlay.Material.Dark.ActionBar'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:ThemeOverlay.Material.Light'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionBar.TabText'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionBar.TabView'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionButton'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionButton.CloseMode'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionButton.Overflow'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.AutoCompleteTextView'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.DropDownItem.Spinner'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Light.ActionBar.TabText'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Light.ActionBar.TabText'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Light.ActionBar.TabView'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.AutoCompleteTextView'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Light.PopupMenu'.
Error:(298, 21) No resource found that matches the given name: attr 'android:overlapAnchor'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ListPopupWindow'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ListView.DropDown'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ListView'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.PopupMenu'.
Error:(298, 21) No resource found that matches the given name: attr 'android:overlapAnchor'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ProgressBar'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ProgressBar.Horizontal'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Spinner'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Spinner'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Toolbar.Button.Navigation'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material.Dialog'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material.Light'.
Error:Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Material.Light.Dialog'.
Error:(144, 21) No resource found that matches the given name: attr 'android:colorAccent'.
Error:(146, 21) No resource found that matches the given name: attr 'android:colorControlActivated'.
Error:(147, 21) No resource found that matches the given name: attr 'android:colorControlHighlight'.
Error:(145, 21) No resource found that matches the given name: attr 'android:colorControlNormal'.
Error:(142, 21) No resource found that matches the given name: attr 'android:colorPrimary'.
Error:(143, 21) No resource found that matches the given name: attr 'android:colorPrimaryDark'.
Error:(144, 21) No resource found that matches the given name: attr 'android:colorAccent'.
Error:(146, 21) No resource found that matches the given name: attr 'android:colorControlActivated'.
Error:(147, 21) No resource found that matches the given name: attr 'android:colorControlHighlight'.
Error:(145, 21) No resource found that matches the given name: attr 'android:colorControlNormal'.
Error:(142, 21) No resource found that matches the given name: attr 'android:colorPrimary'.
Error:(143, 21) No resource found that matches the given name: attr 'android:colorPrimaryDark'.
Error:(144, 21) No resource found that matches the given name: attr 'android:colorAccent'.
Error:(146, 21) No resource found that matches the given name: attr 'android:colorControlActivated'.
Error:(147, 21) No resource found that matches the given name: attr 'android:colorControlHighlight'.
Error:(145, 21) No resource found that matches the given name: attr 'android:colorControlNormal'.
Error:(142, 21) No resource found that matches the given name: attr 'android:colorPrimary'.
Error:(143, 21) No resource found that matches the given name: attr 'android:colorPrimaryDark'.
Error:(144, 21) No resource found that matches the given name: attr 'android:colorAccent'.
Error:(146, 21) No resource found that matches the given name: attr 'android:colorControlActivated'.
Error:(147, 21) No resource found that matches the given name: attr 'android:colorControlHighlight'.
Error:(145, 21) No resource found that matches the given name: attr 'android:colorControlNormal'.
Error:(142, 21) No resource found that matches the given name: attr 'android:colorPrimary'.
Error:(143, 21) No resource found that matches the given name: attr 'android:colorPrimaryDark'.

所有这些似乎都出现在:

\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v11\values.xml

\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v21\values.xml

【问题讨论】:

你的 compileSdkVersion 设置为 21 吗? 不,我有 "compileSdkVersion 20 buildToolsVersion "20.0.0" " 我需要将 buildToolsVerison 更改为 21 吗? @ianhanniballake 使用eclipse时也会出现错误 您应该始终将您的依赖项更新到最新版本,即 appcompat-v7:21.0.3。 @IgorGanapolsky 无法解析符号'android:Theme.Material.Light' in in valules-v21 【参考方案1】:

AppCompat v21 构建的主题需要 API 21 (Android 5.0) 中提供的新 API。要使用 AppCompat 编译您的应用程序,您还必须针对 API 21 进行编译。使用 API 21 编译/构建的推荐设置是 21compileSdkVersion21.0.1buildToolsVersion(这是目前最高的时间 - 你总是想使用最新的构建工具)。

【讨论】:

但是这样做不会使我的应用程序与旧版本不兼容吗?我希望我的应用可以追溯到 sdk 15 compileSdkVersion 完全不同于minSdkVersion(控制您说您的应用程序可以运行的最低级别)和targetSdkVersion(控制任何自动应用的向后兼容性功能 - 如果您没有'尚未在最新的 API 上测试您的应用程序)。 如果您已经得到这个,但仍然收到错误,有什么建议吗?我有 compileSdkVersion 的 21 和 buildToolsVersion21.0.1 但没有运气。 @engico 不幸的是,这对我来说并没有做到。我现在在21.0.2 上,但仍然没有运气。 谢谢@Sver,不幸的是我已经删除了所有的库并且没有成功。只有@shider 更改为appcompat-v7:20.0.0 的解决方案有效,但该版本不具备我正在寻找的所有功能,因此毫无意义。我还确认这发生在一个空白项目上,全新的 appcompat-v7:21.0.0 使用新的构建工具 21【参考方案2】:

确保 both 您的项目的 project.properties 文件中的 target 值(告诉目标 android 版本)文件夹和 appcompat_v7 文件夹相同(最好是最新的)。

:在 'your_project'/project.properties 内

target=android-21 android.library.reference.1=../appcompat_v7

:在 appcompat_v7/project.properties 内

target=android-21 android.library=true

在此之后不要忘记清理您的项目。

【讨论】:

感谢 GiriB !这为我整理了。我的项目的目标构建低于 appcompat 文件夹。 谢谢@GiriB,这对我也有用。我的项目的目标构建低于 appcompat lib 项目。【参考方案3】:

在 gradle.build 中将 compile 'com.android.support:appcompat-v7:21.0.0' 更改为 compile 'com.android.support:appcompat-v7:20.0.0' 对我有用。

【讨论】:

是的,它有效。但阻止您使用 appcompat-v7:21.0.0 这是唯一对我有用的解决方案,但它有局限性。我不确定为什么会这样。 @Sver,无法解析符号 'android:Theme.Material.Light' in in valueles- v21【参考方案4】:

如果你使用的是 android studio goto 文件 --> 项目结构 在 Properties 选项卡中,将 Compile Sdk Version 更改为 AP1 21 并将 Build Tools Version 更改为最高可用版本。 然后刷新 Gradle

【讨论】:

这个就是那个!【参考方案5】:

将 complie SDK 版本更改为 API 级别 21 为我修复了它。然后我遇到了将应用程序部署到我的设备的其他问题。我更改了最低 API 级别以针对我想要的目标并修复它。

以防有人再次遇到这种情况。

【讨论】:

【参考方案6】:

只需选择目标api级别为21进行编译,点击Apply -> 点击OKclean构建项目并运行它。

【讨论】:

【参考方案7】:

我的解决方案是用其他版本编译的

build.gradle(应用程序)

compileSdkVersion 21

祝你好运

【讨论】:

【参考方案8】:

将您的 compile sdk 更改为 23。这为我解决了问题。

【讨论】:

【参考方案9】:

我投票给能像我一样解决问题的人。 我和你有同样的问题,我花了很多时间来纠正。 请测试。

升级整个 SDK,更新 21.0.2 版本也有来自 Google Services 的更新。 升级一切。 在您的工作区中删除文件夹 ( android -support- v7 - AppCompat ) 和 ( google -play - services_lib )

将这些项目重新导入 IDE 并选择再次将它们复制到您的工作区。

执行刷新和构建操作的项目 (google -play - services_lib)

**** ***** 问题 项目 (android -support-v7-AppCompat) 标记 5.0 API,然后刷新和构建。

在他的项目中,在属性中,android,导入库 (android -support-v7-AppCompat) 和 (google -play-services_lib),然后刷新和构建。

【讨论】:

,无法解析符号 'android:Theme.Material.Light' in in valules-v21 【参考方案10】:

如果您不想使用 API 21,您可以使用旧版本的 appcompact 库,使用旧版应用程序紧凑库而不更新它。

您只需按照以下步骤即可实现:

1) 解压下载的完整sdk和eclipse包的版本。

2) 只需从sdk\extras\android\support\v7\appcompact 导入appCompact 库

现在你已经完成了。

【讨论】:

@Perroloco 没找到你?? 它是 AppCompat。 Compat 是“兼容/兼容性”的缩写。 :)【参考方案11】:

我已经更新了 build.gradle(Module: app): 旧代码:

  compile 'com.android.support:appcompat-v7:23.0.1'

新代码:

 compile 'com.android.support:appcompat-v7:22.2.0'

在 android studio 中为我工作。

【讨论】:

【参考方案12】:

当您转到sdk manager 并选择Android 5.0 时,Resource for android 将成为可用选项。下载并安装它。这将解决找不到资源的问题。

【讨论】:

【参考方案13】:

您好,我遇到了涉及appcompatv7 库的相同错误,我按照@ianhanniballake 的建议执行并检查库的构建版本,方法是选择它并使用鼠标的辅助按钮单击:

属性 -> Android -> Android 5.0.1 api level 21

然后清理所有项目,但我没有运气,所以在失去所有希望后,我决定从 Eclipse Kepler 升级到 Eclipse Luna。

当我在等待下载完成时。我决定尝试另一件事,所以我从 eclipse 中删除了 appcompatv7 库并检查了

删除磁盘上的项目内容。

打开 Android SDK 检查是否有任何更新,然后通过选择我的项目并在

下从我的项目中删除所有库引用

项目 -> 属性 -> Android -> 库部分

删除了所有库,包括引发所有这些问题的库

Google_Play_Services_Lib

然后重启 Eclipse 并从 Android SDK 复制。文件夹 appcompat 来自:

android-sdk-linux/extras/android/support/v7

到我的 eclpse 工作区,然后将它从 Import exsting project in workspace 重新导入到 Eclipse,然后选择 propper 构建工具版本

Android 5.0.1 api 21

并添加了我所有的参考库,清理了所有项目并完成了一切工作。

我为所有参考库选择相同的构建工具。

希望这有帮助!!!!

顺便说一句,我试图投票,但我没有足够的代表来投票。

【讨论】:

【参考方案14】:

检查添加谷歌播放服务here,因为我遇到了同样的问题并删除了所有内容,然后按照步骤进行操作。

【讨论】:

【参考方案15】:

我遇到了同样的问题,并且在我的 build.gradle compileSdkVersion 21、targetSdkVersion 21 和 buildToolsVersion 21.0.1 中有正确的 API 级别值

但是,我将它作为一个模块包含在我的项目中,因此我必须确保其他模块的 gradle 设置与 API 21 匹配。之后它对我来说一切正常。

【讨论】:

【参考方案16】:

我变了

compile 'com.android.support:appcompat-v7:19.1.+'

进入

compile 'com.android.support:appcompat-v7:22.1.+'

在 build.gradle 和同步后我没有收到任何错误

【讨论】:

【参考方案17】:

在我使用 Eclipse IDE 的情况下,我遇到了同样的问题,解决方案是: 1- 安装最新的可用 API(SDK 平台和 Google API) 2- 使用以下设置创建项目:

编译方式:使用当时可用的最新 API 版本 其他值可以根据你的要求接收值(看之前的cmets中每个的含义)

【讨论】:

【参考方案18】:

对我来说是这样的:

android 
compileSdkVersion 21
buildToolsVersion '23.0'

defaultConfig 
    applicationId "nl.changer.polypickerdemo"
    minSdkVersion 15
    targetSdkVersion 21
---------
dependencies 
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'



我修改了: compileSdkVersion 21 buildToolsVersion '23.0' appcompat-v7:22.2.0'

【讨论】:

【参考方案19】:

我在导入 google-services.json 文件以实现 Analytics 时遇到了这个问题。我已经在 xml 文件夹中有 global_tracker.xml 文件。在构建期间,在合并 google-services.json 文件中的内容时,开始出现错误。暂时,删除 goolgle-services.json 文件后错误得到解决。并使用较旧的 Analytics 解决方案。

检查您编辑/导入的最后一个 XML 或 Json 文件,您可能会在此处提交错误。这对我来说是有帮助的。

【讨论】:

【参考方案20】:

这对我有帮助

将 Android SDK 更新到最新版本

用最新的组件更新app/build.gradle

compileSdkVersion 25  
buildToolsVersion "25.0.2"  
minSdkVersion 17  
targetSdkVersion 25

希望这能解决您的问题

【讨论】:

【参考方案21】:

这对我来说非常有效。转到 android-support-v7-appcompat 项目并打开文件“project.properties”并在缺少时插入以下行:

target=android-25
compile=android-21

【讨论】:

【参考方案22】:

我的一个 phonegap 项目遇到了同样的问题。为了解决这个问题,我遵循了以下步骤

1)右键单击项目名称(在我的情况下为android),选择“打开模块设置”

2) 选择模块(android 和 CordovaLib)

3) 点击顶部的属性

4) 选择编译 SDK 版本(我选择了 API 26: Android 8.0)

5)选择构建工具版本(我选择了26.0.2)

6)源兼容性(1.6)

7) 目标兼容性(1.6)

单击确定并重建项目。

还有一个额外的步骤

添加

编译'com.android.support:appcompat-v7:27.0.2'

build.gradle(模块:android)

以下链接显示了我已遵循的步骤的设置

https://app.box.com/s/itkkjz09wgy36jwowhvzcyx6fp7o2gkh

【讨论】:

以上是关于AppCompat v7 r21 在 values.xml 中返回错误?的主要内容,如果未能解决你的问题,请参考以下文章

NoClassDefFoundError:解析失败:Landroid/support/v7/appcompat/R$styleable

带有 appcompat 库 v7 的 ActionBar(ava.lang.IllegalStateException:您需要使用 Theme.AppCompat 主题)

AppCompat学习-AppCompatSpinner

建议:使用 tools:overrideLibrary="android.support.v7.appcompat" 强制使用

安卓 appcompat v7:23

使用Tab与新ToolBar(AppCompat v7-21)