88

我正在关注本教程:https ://developers.google.com/maps/documentation/android/start#overview ,了解如何将 Google 地图添加到 Android SDK 中的应用程序。

我似乎遇到的唯一问题是在这段时间(我已经完成了其他所有事情,没有任何错误):

Edit your application's AndroidManifest.xml file, and add the following declaration within the

 <application> element. This embeds the version of Google Play services that the app was compiled with.

 <meta-data
 android:name="com.google.android.gms.version"
 android:value="@integer/google_play_services_version" />

The error is:
   No resources found that match the given name (at 'value' with value '@integer/    
   google_play_services_version').

我试图按照这个人的解决方案来解决同样的问题:Google Play Services Library update and missing symbol @integer/google_play_services_version

但我仍然遇到同样的错误。请问有什么帮助吗?

4

18 回答 18

100

可能是您的库未正确链接到项目,或者您的 google-play-services 库版本较旧,因此出现冲突并且 Eclipse 变得愚蠢..:S

不,您不需要在 integers.xml 中添加任何内容。当您将 Google-play-services 库正确链接到您的项目参考android:value="@integer/google_play_services_version"时,将找到并且您准备好了。当您将库添加到您的项目时,只需再做一个干净而有趣的 Eclipse 环境就可以正确地清除一些东西。

如果您在下一个播放版本到来时将此数字硬编码在某个地方,则需要对其进行更新。如果您忘记了这一点,您将再次花时间寻找错误..:S

希望它有所帮助。;)

于 2013-11-19T10:03:49.860 回答
36

我得到了解决方案。

  • 第 1 步:在包资源管理器中右键单击您的项目(Eclipse 中的左侧)
  • 第2步:转到Android。
  • 第 3 步:在库部分添加库...(google-play-services_lib)
    见下文

    • 将库项目复制到

    <android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/

    • 到您维护 Android 应用项目的位置。如果您使用的是 Eclipse,请将库项目导入您的工作区。单击 File > Import,选择 Android > Existing Android Code into Workspace,然后浏览到库项目的副本以将其导入。
    • 点击这里了解更多。
  • 第四步:点击应用
  • 第五步:点击确定
  • 第 6 步:从包资源管理器中刷新您的应用程序。
  • 第7步:你会看到错误消失了。
于 2014-03-26T00:00:19.520 回答
30

这里

您应该引用复制到开发工作区的库的副本——您不应该直接从 Android SDK 目录引用该库。

我遇到了这个错误,因为我引用了 SDK 目录中的原始副本。确保首先将库复制到 android 工作区并仅引用它。在 Eclipse 中,您可以通过在导入项目时选中“将项目复制到工作区”来做到这一点。

于 2014-01-06T10:27:46.017 回答
22

在 Android Studio 中,您只需将其添加到 Gradle 文件即可解决此问题:

compile 'com.google.android.gms:play-services:6.5.87'

编辑

现在,由于更新和新的 Gradle API,您应该使用的行是:

implementation 'com.google.android.gms:play-services:12.0.0'

另一个重要提示:避免使用捆绑版本的 Google Play 服务,但考虑仅声明您的应用程序所需的依赖项以减小其大小以及将不必要的命中减少到 65k 方法限制。像(即地图)这样的东西会比上面的一般播放服务使用更好:

implementation 'com.google.android.gms:play-services-maps:12.0.0'
于 2014-12-21T02:53:50.510 回答
7

只需添加库引用,转到Propertes-> Android,然后添加库。

在此处输入图像描述

然后加入你AndroidManifest.xml

   <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
于 2015-02-27T22:35:26.937 回答
3

我在 Android Studio 1.2.1.1 中遇到了同样的问题。就像其他答案所说的一样,但是,我无法找到添加依赖项的位置。最后我在File->Project structure->Dependencies下找到了 这个菜单,你可以选择将依赖项添加到 Google Play Services 库中。

于 2015-05-21T07:10:54.190 回答
2

尝试按照本文档中的说明安装 4.0.30:http: //developer.android.com/google/play-services/setup.html

于 2014-02-01T18:31:05.030 回答
2

就我而言,我必须从 SDK 管理器安装 google 存储库。

于 2014-02-21T02:15:55.857 回答
1

我遇到了同样的错误;我之前已经为谷歌地图安装了 google-play-services_lib(它工作正常),但是当我后来尝试将元数据条目添加到我的清单时,我得到了错误。我尝试了上述所有建议,但没有任何东西可以正确链接它们;我终于从我的项目中删除了链接(project-properties-Android,删除了google-play-services_lib库),然后从Eclipse工作区中删除,删除了磁盘上的文件,最后使用SDK管理器从头开始重新安装。

这似乎终于奏效了。现在 Eclipse 已决定允许我保留元数据条目而没有错误。

于 2014-03-11T06:15:01.337 回答
0

您可以更改工作区并修复该问题,然后将已修复的项目导入回您的主工作区。另外这4个步骤应该是为了希望它在未来对某人有所帮助。

于 2014-02-17T15:28:21.387 回答
0

当您下载了新版本的 Google Play 服务但未安装最新的 SDK 时,也会发生此错误。这就是发生在我身上的事。因此,正如其他人提到的,如果您尝试导入 Google Play 服务然后打开控制台,您将看到编译错误。如果是这种情况,请尝试安装所有最新的 Android SDK,然后重试。

于 2014-06-25T04:02:40.463 回答
0

我做了以下步骤来从中恢复:

1) 将 google play 服务作为项目导入您的 android sdk。在我的系统中,它位于 C:\adt-bundle-windows-x86_64-20140702\sdk\extras\google\google_play_services\libproject\google-play-services_lib

2)您的android应用程序->属性-> android

在窗口

2.1) 在项目构建目标中单击 Google APIs 2.2) 在底部框架中添加 google-play 服务并单击确定

希望它能给出明确的指示!

谢谢。

于 2014-12-23T06:12:09.133 回答
0

用适当的库版本代码替换版本代码将解决您的问题,如下所示:

 <integer name="google_play_services_version"> <versioncode> </integer>
于 2015-02-11T08:59:45.377 回答
0

就我而言,我需要将 google-play-services_lib 文件夹复制到我的应用程序源代码的同一驱动器中

  • F:\Products\Android\APP*.java <- 我的应用程序在这里所以我复制到下面的文件夹
  • F:\Products\Android\libs\google-play-services_lib
于 2015-03-28T04:56:04.427 回答
0

只需从项目中删除 google play services 库并从文件夹中再次添加就可以sdk->extras->google完美地解决我的问题。

于 2015-05-29T10:43:10.660 回答
0

就我而言,我只需重新启动我的 Eclipse 就可以了。

我已经工作了 2 周而没有关闭它,我认为它出了问题。

感谢 Ewoks 的建议!

于 2015-07-01T14:26:51.770 回答
-3

可以直接用作

android:value="6587000"

代替

android:value="@integer/google_play_services_version"

干杯。

于 2015-03-02T13:22:45.473 回答
-37

您需要将“integers.xml”文件添加到项目的“res/values”文件夹中。文件的内容应该是..

<resources>
    <integer name="google_play_services_version">4030500</integer>
</resources>
于 2013-11-15T00:16:22.380 回答