我收到“错误:未找到与给定名称匹配的资源(值为@integer/google_play_services_version)”
Posted
技术标签:
【中文标题】我收到“错误:未找到与给定名称匹配的资源(值为@integer/google_play_services_version)”【英文标题】:I'm getting "Error: No resource found that matches the given name (at value with value @integer/google_play_services_version)" 【发布时间】:2014-07-18 09:41:06 【问题描述】:我正在 Ionic Framework/cordova 上开发一个应用程序,当我尝试“cordova run android”时,我得到了这个:
“错误:找不到与给定名称匹配的资源(在值与 值 @integer/google_play_services_version)"
我真的不知道发生了什么,我尝试将值设置为固定值(我知道不是最好的解决方案),问题仍然存在。
提前致谢!
【问题讨论】:
developers.google.com/maps/documentation/android/… 【参考方案1】:对于使用 Android Studio 和/或 Gradle 遇到此问题的任何人,您只需确保您的成绩文件中具有正确的依赖项。同样,不要将此值硬编码到versions.xml 文件中。
Gradle 例如。
dependencies
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.google.android.gms:play-services-gcm:7.5.0'
【讨论】:
在此答案的基础上,您可以通过在您的 plugin.xml 文件中添加一个框架元素,让 Cordova 在构建期间为您添加此 Gradle 依赖项:将 google-play services_lib 库项目复制到您的工作区或将库项目导入您的 Eclipse。
点击文件>导入,选择Android>Existing Android Code into Workspace,浏览工作区导入库项目。
右键单击您的 android 项目。转到属性。在左侧面板上选择 Android。单击添加并浏览库项目。选择相同。点击确定并申请。
查看此链接以供参考。 http://developer.android.com/tools/projects/projects-eclipse.html#ReferencingLibraryProject
【讨论】:
如果已经有但您仍然收到错误消息怎么办? 抱歉回复晚了,可能是您没有正确链接 google play library 与您的项目。查看此链接developer.android.com/tools/projects/…【参考方案3】:正确安装和配置 Google Play 服务 SDK。您无需对该值进行硬编码。
将 Google Play 服务添加为 Android 库项目。我发现必须将播放服务 libproject 导入到与您的项目相同的物理驱动器上。 (导入时选中“将项目复制到工作区”复选框)
【讨论】:
如果你使用 Unity3d,你会怎么做? 下载 SDK 后,您可以从这里将其添加为项目:[AndroidSdk_Home]/extras/google/google_play_services/libproject/google-play-services_lib .. 感谢:***.com/a/17611095/2162226 将播放服务 libproject 添加到同一个物理驱动器对我有用。【参考方案4】:我通过从 google play 服务库复制 version.xml
文件解决了这个问题。
google-play-services_lib/res/values/version.xml
到我的项目
MyApp/res/values/version.xml
【讨论】:
也帮助了我...谢谢! 这个答案有点错误,因为当谷歌更新它的支持库时,他们会更新 @integer/google_play_services_version 的值,你的应用程序会出现问题。可以很容易地用这个答案修复它,但修复是暂时的【参考方案5】:您需要将播放服务库添加到您的项目中。这仅通过添加外部 jar 不起作用。您需要将 play_services_lib 项目导入您的工作区。然后通过转到
将这个库添加到您的项目中你的项目 -> 属性 -> Android -> 库
查看此链接以获取有关如何将 play_services_lib 导入工作区的详细说明
http://developer.android.com/google/play-services/setup.html
在此之后错误将消失,您无需添加任何固定值。
【讨论】:
【参考方案6】:对于使用 Android Studio / Gradle 遇到此问题的任何人,您只需要确保您的成绩文件中有正确的依赖项。
您需要设置 Google Play 服务 – https://developers.google.com/android/guides/setup (1. Debes configurar Google Play Services)
如果您已经完成了上一步,那么 (si ya completaste ese paso entonces)... 假设你有这个 Gradle:(suponiendo que ya tienes un archivo Gradle asi:)
依赖 编译 fileTree(dir: ‘libs’, include: [‘*.jar’]) 编译‘com.google.android.gms:play-services-gcm:7.5.0’
您需要为 Gradle 添加一行以包含 Google Play 服务库 (solo necesitas agregar un solo renglon para que Gradle incluya la libreria de Google Play Services library)
依赖 编译 fileTree(dir: ‘libs’, include: [‘*.jar’]) 编译‘com.android.support:appcompat-v7:21.0.3’ 编译‘com.google.android.gms:play-services-gcm:7.5.0’
将此值硬编码到versions.xml 文件中是一种不好的做法(请参考“quemar” o dejar fijo este valor en el archivo mencionado)
【讨论】:
maograciag.wordpress.com/2015/10/22/…【参考方案7】:对于在 Unity3D 中构建时遇到此问题的任何人:
1.Assets/PlayServicesResolver/AndroidResolver/ResolveClientJars
2.再次构建
今天为我解决了这个确切的问题。
stderr[
AndroidManifest.xml:19: error: Error: No resource found that matches the given name (at 'value' with value '@integer/google_play_services_version').
]
【讨论】:
以上是关于我收到“错误:未找到与给定名称匹配的资源(值为@integer/google_play_services_version)”的主要内容,如果未能解决你的问题,请参考以下文章
我收到“错误:React.Children.only 预计会收到一个 React 元素子项。”带有 TouchableWithoutFeedback
当我没有收到手动运行代码时,在 Python for 循环中收到 KeyError