找不到播放服务-basement.aar
Could not find play-services-basement.aar
昨天我尝试构建我的应用程序,一切正常。
今天,项目没有任何变化...突然间,我收到了这条警告消息,告诉我:
Error:Could not find play-services-basement.aar (com.google.android.gms:play-services-basement:11.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/android/gms/play-services-basement/11.0.1/play-services-basement-11.0.1.aar
有人遇到同样的问题吗?
如果您跟随 link 搜索包,它基本上会通过浏览器立即下载。我想服务器端发生了一些变化?也许命名约定?
它似乎在寻找:play-services-basement.aar 并取回 play-services-basement-11.0.1.aar?
这可能是命名约定还是 gradle 问题?
更新 #2 2018/05/29
这个问题现在看起来 已修复 消失了,我仍在使用相同的 gradle 配置。但是我刚才做了这些步骤,我不确定这些步骤是否有任何作用,或者这是否是服务器端问题并且最近出现了 fixed/updated。我只是注意到在执行以下步骤后问题消失了:
Add the following in project-level gradle.build's buildscript > repositories
and allprojects > repositories
.
google()
maven { url 'http://jcenter.bintray.com' }
Change the google-services classpath to
classpath com.google.gms:google-services:4.0.1'
Sync Project with Gradle Files
更新 #1 2018/05/29
我通过在 app-level gradle 中将我的 firebase 依赖项降级到 ~12.0.0 来解决这个错误。但这将严重影响应用程序,仍在寻找更可行的解决方法。
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
...
compile 'com.google.firebase:firebase-core:12.0.0'
compile 'com.google.firebase:firebase-database:12.0.0'
compile 'com.google.firebase:firebase-storage:12.0.0'
compile 'com.google.firebase:firebase-auth:12.0.0'
compile 'com.google.firebase:firebase-crash:12.0.0'
...
同样,我遇到了@SimbaClaws 描述的相同问题。一切都顺利编译,直到我昨天遇到同样的问题。
我的 项目级 build.gradle,
中有以下代码
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
maven {
url 'https://maven.fabric.io/public'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
//classpath 'com.google.gms:google-services:3.0.0'
classpath 'com.google.gms:google-services:3.2.1'
classpath 'io.fabric.tools:gradle:1.25.1'
}
}
allprojects {
repositories {
jcenter()
maven {
url 'https://maven.google.com/'
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
以及 app-level build.gradle
的以下代码
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
applicationId "my.secret.application"
minSdkVersion 16 // 19
targetSdkVersion 26
versionCode 1
versionName "5.0.204"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.google.firebase:firebase-core:15.0.2'
compile 'com.google.firebase:firebase-database:15.0.0'
compile 'com.google.firebase:firebase-storage:15.0.2'
compile 'com.google.firebase:firebase-auth:15.1.0'
compile 'com.google.firebase:firebase-crash:15.0.2'
compile 'com.android.support:appcompat-v7:26.+'
compile 'com.android.support:design:26.+'
compile 'com.android.support:recyclerview-v7:26.+'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'de.hdodenhof:circleimageview:2.2.0'
compile 'com.android.support:palette-v7:26.+'
compile 'com.android.support:support-v4:26.+'
compile 'com.android.support:cardview-v7:26.+'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'org.greenrobot:eventbus:3.1.1'
testCompile 'junit:junit:4.12'
compile 'com.crashlytics.sdk.android:crashlytics:2.9.1'
}
apply plugin: 'com.google.gms.google-services'
如果我遗漏了什么,谁能告诉我?我还在四处寻找可能的解决方法和答案。 TIA!
jcenter() 有一些库的镜像(我猜他们是故意这样做的),这些库最初应该可以通过 google() 或 maven() 存储库获得。当 gradle 构建工作时,对于项目中使用的任何库,首先要查找的是 repositories {..
中首先列出的存储库 当 jcenter() 镜像没有发布时(例如com.google.android.gms:play-services-ads:15.0.1 对于我的情况)你的 gradle 正在寻找,构建失败并出现此类错误。
因此,jcenter() 应该列在下面 repositories {..
部分的最后位置。
buildscript {
ext.kotlin_version = '1.2.50'
repositories {
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}...
和
allprojects {
repositories {
google()
jcenter()
}
}
这太疯狂了!!!我遇到了同样的问题。构建工作正常,然后突然开始因同样的问题而失败。我尝试了上面的建议,但它对我不起作用。最后,这对我有用:
更新到最新的 firebase 依赖项:
implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-ads:17.0.0'
此外,广告服务:
implementation 'com.google.android.gms:play-services-ads:17.0.0'
注意:对于 play-services-ads:17.0.0,必须在 Manifest 文件中添加以下内容,否则应用程序会在打开时崩溃。
<application>
<!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="[ADMOB_APP_ID]"/>
</application>
有同样的问题,对我来说 none 这里提到的答案有效。所以我刚刚更新了 gradle 文件中的依赖项以及具有 com.google.gms 的依赖项:(将它们保持在同一版本示例 16.0.0)
我也遇到过这个问题。我发现根本原因是构建 Gradle 版本不一致。
在 Gradle 脚本库 "if I can call it that " 中有两个构建 gradle 模块。 build.gradle(项目:应用名称)和 build.gradle(模块:应用)。确保依赖项中的类路径 'com.android.tools.build:gradle:3.2.1' 使用的是最新且相同版本的工具。不一致会导致构建出现问题。
在我的例子中,刚刚添加 www
之前 url 就像 url "https://jitpack.io/"
添加 www
之后开始为我工作。在其他存储库中也尝试添加显式 URL。
maven {
url "https://www.jitpack.io/"
}
昨天我尝试构建我的应用程序,一切正常。
今天,项目没有任何变化...突然间,我收到了这条警告消息,告诉我:
Error:Could not find play-services-basement.aar (com.google.android.gms:play-services-basement:11.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/android/gms/play-services-basement/11.0.1/play-services-basement-11.0.1.aar
有人遇到同样的问题吗?
如果您跟随 link 搜索包,它基本上会通过浏览器立即下载。我想服务器端发生了一些变化?也许命名约定?
它似乎在寻找:play-services-basement.aar 并取回 play-services-basement-11.0.1.aar? 这可能是命名约定还是 gradle 问题?
更新 #2 2018/05/29
这个问题现在看起来 已修复 消失了,我仍在使用相同的 gradle 配置。但是我刚才做了这些步骤,我不确定这些步骤是否有任何作用,或者这是否是服务器端问题并且最近出现了 fixed/updated。我只是注意到在执行以下步骤后问题消失了:
Add the following in project-level gradle.build's
buildscript > repositories
andallprojects > repositories
.
google()
maven { url 'http://jcenter.bintray.com' }
Change the google-services classpath to
classpath com.google.gms:google-services:4.0.1'
Sync Project with Gradle Files
更新 #1 2018/05/29
我通过在 app-level gradle 中将我的 firebase 依赖项降级到 ~12.0.0 来解决这个错误。但这将严重影响应用程序,仍在寻找更可行的解决方法。
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
...
compile 'com.google.firebase:firebase-core:12.0.0'
compile 'com.google.firebase:firebase-database:12.0.0'
compile 'com.google.firebase:firebase-storage:12.0.0'
compile 'com.google.firebase:firebase-auth:12.0.0'
compile 'com.google.firebase:firebase-crash:12.0.0'
...
同样,我遇到了@SimbaClaws 描述的相同问题。一切都顺利编译,直到我昨天遇到同样的问题。
我的 项目级 build.gradle,
中有以下代码
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
maven {
url 'https://maven.fabric.io/public'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
//classpath 'com.google.gms:google-services:3.0.0'
classpath 'com.google.gms:google-services:3.2.1'
classpath 'io.fabric.tools:gradle:1.25.1'
}
}
allprojects {
repositories {
jcenter()
maven {
url 'https://maven.google.com/'
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
以及 app-level build.gradle
的以下代码
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
defaultConfig {
applicationId "my.secret.application"
minSdkVersion 16 // 19
targetSdkVersion 26
versionCode 1
versionName "5.0.204"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.google.firebase:firebase-core:15.0.2'
compile 'com.google.firebase:firebase-database:15.0.0'
compile 'com.google.firebase:firebase-storage:15.0.2'
compile 'com.google.firebase:firebase-auth:15.1.0'
compile 'com.google.firebase:firebase-crash:15.0.2'
compile 'com.android.support:appcompat-v7:26.+'
compile 'com.android.support:design:26.+'
compile 'com.android.support:recyclerview-v7:26.+'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'de.hdodenhof:circleimageview:2.2.0'
compile 'com.android.support:palette-v7:26.+'
compile 'com.android.support:support-v4:26.+'
compile 'com.android.support:cardview-v7:26.+'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'org.greenrobot:eventbus:3.1.1'
testCompile 'junit:junit:4.12'
compile 'com.crashlytics.sdk.android:crashlytics:2.9.1'
}
apply plugin: 'com.google.gms.google-services'
如果我遗漏了什么,谁能告诉我?我还在四处寻找可能的解决方法和答案。 TIA!
jcenter() 有一些库的镜像(我猜他们是故意这样做的),这些库最初应该可以通过 google() 或 maven() 存储库获得。当 gradle 构建工作时,对于项目中使用的任何库,首先要查找的是 repositories {..
中首先列出的存储库 当 jcenter() 镜像没有发布时(例如com.google.android.gms:play-services-ads:15.0.1 对于我的情况)你的 gradle 正在寻找,构建失败并出现此类错误。
因此,jcenter() 应该列在下面 repositories {..
部分的最后位置。
buildscript {
ext.kotlin_version = '1.2.50'
repositories {
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}...
和
allprojects {
repositories {
google()
jcenter()
}
}
这太疯狂了!!!我遇到了同样的问题。构建工作正常,然后突然开始因同样的问题而失败。我尝试了上面的建议,但它对我不起作用。最后,这对我有用:
更新到最新的 firebase 依赖项:
implementation 'com.google.firebase:firebase-core:16.0.4' implementation 'com.google.firebase:firebase-ads:17.0.0'
此外,广告服务:
implementation 'com.google.android.gms:play-services-ads:17.0.0'
注意:对于 play-services-ads:17.0.0,必须在 Manifest 文件中添加以下内容,否则应用程序会在打开时崩溃。
<application> <!-- Sample AdMob App ID: ca-app-pub-3940256099942544~3347511713 --> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="[ADMOB_APP_ID]"/> </application>
有同样的问题,对我来说 none 这里提到的答案有效。所以我刚刚更新了 gradle 文件中的依赖项以及具有 com.google.gms 的依赖项:(将它们保持在同一版本示例 16.0.0)
我也遇到过这个问题。我发现根本原因是构建 Gradle 版本不一致。 在 Gradle 脚本库 "if I can call it that " 中有两个构建 gradle 模块。 build.gradle(项目:应用名称)和 build.gradle(模块:应用)。确保依赖项中的类路径 'com.android.tools.build:gradle:3.2.1' 使用的是最新且相同版本的工具。不一致会导致构建出现问题。
在我的例子中,刚刚添加 www
之前 url 就像 url "https://jitpack.io/"
添加 www
之后开始为我工作。在其他存储库中也尝试添加显式 URL。
maven {
url "https://www.jitpack.io/"
}