找不到play-services-basement.aar

Sim*_*aws 149 gradle google-play-services

昨天我尝试构建我的应用程序,一切正常.

今天,没有对项目进行任何更改......突然间我收到这条警告信息,告诉我:

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
Run Code Online (Sandbox Code Playgroud)

是否有人遇到过同样的问题?

如果你按照它搜索包的链接,它基本上可以通过浏览器立即下载.我想服务器端有什么变化?也许命名惯例?

看起来它正在寻找:play-services-basement.aar并取代play-services-basement-11.0.1.aar而不是?这可能是命名约定还是gradle问题?

Fio*_*Fio 355

jcenter()有一些库的镜像(我猜它们是故意做的)应该最初通过google()或maven()存储库提供.当gradle构建工作时,对于项目中使用的任何库,首先要查找的是repositories {..当jcenter()镜像没有发布时首先列出的存储库(例如com.google.android.gms:play -services-ads:15.0.1 for your case)你的gradle正在寻找,构建失败并出现这样的错误.

因此,jcenter()应该在repositories {..部分的最后位置列出,如下所示.

   buildscript {
    ext.kotlin_version = '1.2.50'
    repositories {
        google()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
        jcenter()
    }...
Run Code Online (Sandbox Code Playgroud)

  allprojects {
    repositories {
        google()
        jcenter()
    }
  }
Run Code Online (Sandbox Code Playgroud)

  • 说jcenter是摇篮文件中的最后一个地方是救我的生命:) (10认同)
  • 在更新为"com.google.gms:google-services:4.0.1"后,这解决了"找不到... aar"文件的问题.每当我尝试更新此版本或Play服务版本时,我似乎都遇到了这种模糊和令人沮丧的问题.感谢您结束3小时的搜索来解决此问题! (4认同)
  • 这个问题突然发生在我身上,非常感谢你的帮助,只需将jcenter()的更改顺序改为最后一个. (3认同)
  • 谢谢.项目工作正常,突然我遇到了同样的问题.将jcenter()放到最后一个解决了这个问题. (2认同)

use*_*316 13

这太疯狂了!!!我遇到了同样的问题.构建工作正常,然后突然开始失败,同样的问题.我尝试了上面的建议,但它对我不起作用.最后,这对我有用:

更新到最新的firebase依赖项:

implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-ads:17.0.0'
Run Code Online (Sandbox Code Playgroud)

另外,广告服务:

实施'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>
Run Code Online (Sandbox Code Playgroud)


rai*_*r00 6

更新#2 2018/05/29

这个问题看起来已经解决了,我现在仍在使用相同的gradle配置.但是我前一段时间做了这些步骤我不确定这些是否做了什么,或者这是否是服务器端问题并且最近得到修复/更新.我刚刚注意到在执行以下步骤后问题就消失了:

  1. 添加在项目级gradle.build的下面buildscript > repositoriesallprojects > repositories.

    • google()
    • maven { url 'http://jcenter.bintray.com' }
  2. 将google-services类路径更改为
    classpath com.google.gms:google-services:4.0.1'

  3. 使用Gradle文件同步项目



更新#1 2018/05/29

我通过将应用程序级 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!