找不到com.google.android.gms:play-services:3.1.59 3.2.25 4.0.30 4.1.32 4.2.40 4.2.42 4.3.23 4.4.52 5.0.77 5.0.89 5.2.08 6.1。 11 6.1.71 6.5.87


224

通过gradle引用播放服务对我来说不再起作用-煮熟了-甚至我最初用作参考的示例也停止了工作:https//plus.google.com/+AndroidDevelopers/posts/4Yhpn6p9icf

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':auth'.
> Failed to notify project evaluation listener.
   > Could not resolve all dependencies for configuration ':auth:compile'.
      > Could not find com.google.android.gms:play-services:3.1.36.
        Required by:
            gpsdemos:auth:unspecified

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 3.577 secs

我担心只是版本增加了,但提出了两个问题:#1)什么是新版本?#2)为什么旧版本不见了?


2
您可以在此处查看Play服务的可用版本:C:\ Users \ USERNAME \ AppData \ Local \ Android \ android-studio \ sdk \ extras \ google \ m2repository \ com \ google \ android \
gms

1
在SDK管理器中安装Google Repository。
JJ_Coder4Hire

Answers:


465

检查您是否还安装了“ Google Repository”。如果没有,您还必须在SDK Manager中安装“ Google Repository”。

另请注意,可能有2个SDK安装-一个来自AndroidStudio,另一个可能已经安装。最好将其合并到一个安装中-这是一个常见的陷阱-您已将其安装在一个安装中,但在使用另一安装进行构建时会失败。

如何访问用于Google Repository的SDK Manager的示例


6
否-仅mavenCentral()-请注意,您可能有2个sdk位置-一个随AndroidStudio一起提供-这是一个常见的陷阱
ligi 2013年

6
+1,但您的意思是:在“ Android SDK”中安装“ Google Repository”。
本杰明·图埃格

1
我必须同时安装“ Google Repository”和“ Google Support Repository”才能正常工作。+1
Jan-TerjeSørensen13年

1
感谢您对ligi的评论。我没有意识到Android Studio开始附带发布Android SDK。现在,我对他们有2管理:(。
harmanjd

4
很奇怪,这条信息没有在其他地方明确说明。但感谢您的帮助=)
Ted

60

只需从sdk管理器安装Google Repository,然后重启Android Studio。


37

除了安装存储库和SDK软件包之外,还应注意版本号会定期更改。此时,一个简单的解决方案是用加号(+)替换特定的版本号。

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

Google的指示表明,应该确保升级版本号,但是添加加号将解决版本更改。另请注意,在Android Studio中进行构建时,如果有新版本可用,则会在状态栏中显示一条消息。

通过深入到正确的存储库路径,可以查看播放服务的可用版本:

播放服务存储库路径

参考资料

站点还提供了有关Eclipse和其他IDE的说明。

ADS设置


2
将我的版本更改为“ +”对我来说是固定的。Intellij说我应该使用版本5.2.8,但是可用的实际版本是5.2.08
jblack

1
答案的问题在于,播放服务的当前可用版本为4.4.52,这意味着用户甚至无法升级到5+。
上课,2014年

16

在找到这篇文章之前,我一直在努力解决这个问题。就像@ligi所说的,有些人有两个SDK文件夹(捆绑的Android Studio和Eclipse)。问题在于,是否在两个SDK文件夹上都下载了Google Play服务库,您的ANDROID_HOME环境变量必须指向Android Studio使用的SDK文件夹。

SDK Folder A  (Used on Eclipse)
SDK Folder B  (Used on AS)

ANDROID_HOME=<path to SDK Folder B>

更改此变量的路径后,错误消失了。


7

我有同样的问题,因为我有:

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

我解决了将版本号更改为“ +”的问题。所以这些行必须是:

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

当您希望使用较新版本的库但编译器选择较旧的版本时,这种黑客将来可能会有害。您基本上是在告诉gradle,您不在乎您的项目使用哪个版本的Play服务库。
Tjaart

4
困难在于,无论从何处挖掘,这种环境都无法轻易地找出实际安装的版本,所有Android文档都公然缺少有关如何确定“播放”版本的任何线索我的SDK管理器告诉我我只是有“ 26”(在“ extras”下而不是API级别),其他窗口告诉我它是26.0.0。我已经尝试过这些,还有许多其他事情,版本号...都不起作用。因此,如果您担心使用此“ hack”的人,那是因为他们找不到要使用的实际版本号。
SpacemanScott 2015年

4

由于存在类似的问题,因此将其添加为第二个参考。.
我必须在AS设置的“存档”类别下显式添加“ .aar”作为注册文件类型。


3

如果您已经安装了Google Repository,请确保已更新。我必须更新我的Google存储库和服务。这是在我更新了Android Studio之后。


2

我添加了一个新的环境变量ANDROID_HOME,并将其指向位于Android Studio安装目录内的SDK(C:\ Program Files(x86)\ Android \ android-studio \ sdk)。(环境变量是Windows的一部分;您可以通过高级计算机属性来访问它们...使用Google可以获取更多信息)


1

我也有同样的问题。

您应该在build.gradle中添加一些依赖项,如下所示

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile project(':libcocos2dx')
    compile 'com.google.firebase:firebase-ads:11.6.0'
// the key point line
    compile 'com.google.android.gms:play-services-auth:11.6.0'
}

1

我也遇到同样的问题并解决了。

根据其他人的上述解决方案,我尝试了所有事情,但并不能解决我的问题。

即使您有两个SDK位置,也不必担心,并检查您的android home是否设置为Android studio SDK(如果您在该SDK位置中具有Android存储库和所有内容)。

解:

  • 转到您的项目结构
  • 选择你的模块
  • 点击右侧的依存关系点击
  • 添加库依赖
  • “ com.google.android.gms:播放服务:+”

我希望它能解决您的问题。


0

我错误地在编译com.google.android.gms:play-services:5.+脚本块中将编译添加到依赖项中。您应该将其添加到第二个依赖关系块中。用gradle进行更改-> synch项目。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.