Оновлення до Служб Google Play: 9.0.0 Помилка Не вдалося вирішити: com.google.android.gms: play-services-вимірювання: 9.0.0


125

Я оновив файл build.gradle з

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

до

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

і тепер я отримую цю помилку, якої раніше не отримував.

Помилка: не вдалося вирішити: com.google.android.gms: play-services-measurement: 9.0.0 введіть тут опис зображення

введіть тут опис зображення


2
Ви оновили свій сховище Google в Менеджері SDK?
— CommonsWare

1
Хммм ... коли я дивлюся на POM для play-services:9.0.0в моєму SDK, я не бачу , play-services-measurementяк залежність, і немає 9.0.0з play-services-measurement. Ви запитуєте вручну play-services-measurement? Якщо ні, спробуйте очистити проект або виконати gradleпобудову командного рядка за допомогою --refresh-dependenciesперемикача, щоб спробувати перестати шукати play-services-measurement. Однак у цілому вам, мабуть, краще скористатися більш зосередженими залежностями (тими, які ви прокоментували), а не "кухонними раковинами" play-services.
— CommonsWare

1
1. Я взагалі не вимагаю вимірювання служб відтворення, не там, де мій код. 2. Через цю помилку я перейшов на послугу «кухонна мийка». 3. Можливо, мені доведеться зробити це оновлення, чого я ніколи раніше не робив.
— Філіп БГ

1
* Що пішло не так: виникла проблема з налаштуванням проекту ": app". > Не вдалося вирішити всі залежності для конфігурації ': app: _debugCompile'. > Не вдалося знайти com.google.android.gms: play-services-measurement: 9.0.0. Шукали в таких місцях: jcenter.bintray.com/com/google/android/gms/… .0.0 / play-services-measurement-9.0.0.pom
— Philip BH

1
Припускаючи, що відповідь нижче не вирішує вашу проблему, вам потрібно визначити, що намагається завантажити цю залежність (і, зокрема, цю версію). play-servicesбільше не вимагає цього, як з 9.0.0, тому щось інше повинно просити.
— CommonsWare

Відповіді:


246

Цю проблему вдалося вирішити.

Оновіть свій класний шлях com.google.gms:google-services:2.1.0у студії рівня проекту до classpathcom.google.gms:google-services:3.0.0


39
Якщо хтось не знайде ... цю зміну потрібно внести у верхній рівень build.gradle .... це працювало для мене, але тоді я отримав цю помилку "Відсутній api_key / current_key об'єкт", тому мені довелося застосувати це рішення stackoverflow.com/a/37317752/50730
— Хав'єр Toron

Я отримую стару помилку "Атрибут", орієнтація "вже визначена". Оновлений клас Google для служб Google до 3.0.0. І увімкнено GCM та доданий серверний API API, генерується у файлі google-services.json. Хтось може мені допомогти?
— cgr

1
Тепер помилка змінилась на "Помилка. Виконання не виконано для завдання": app: processFreeDebugGoogleServices ".> Відсутній об'єкт api_key / current_key" ???
— LemonGentry

5
З повагою хтось може пояснити, чому саме це "виправлення" працює? Я вважаю, що якість відповідей SO, які просто дають рекомендацію, не вказуючи на документи або основні причини первинного невдачі, ледве корисні та потенційно можуть призвести до більшої плутанини.
— Том Пейс

все ще отримує помилку Помилка: Не вдалося знайти com.google.android.gms: play-services-maps: 9.2.0. Потрібно: app_1: app: не вказано <a href="searchInBuildFiles"> Пошук у файлах build.gradle </a>
— Rohit Mandiwal

27

Обов’язкові: Останні версії Android Studio та Google Play Services

Ви можете додати плагін до свого проекту, оновивши файли build.gradle верхнього рівня та файли build.gradle на рівні програми таким чином:

classpath 'com.google.gms:google-services:3.0.0'

Подібно до

 // Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        mavenLocal()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'
        classpath 'com.google.gms:google-services:3.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
        mavenLocal()
    }
}

Тепер вам потрібно додати залежність від Служб Google Play. Всередині build.gradle програми додайте:

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

Нарешті

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 24
    buildToolsVersion "24.0.2"

    defaultConfig {
        applicationId "// set Yours"
        minSdkVersion 15
        targetSdkVersion 24
        versionCode 1
        versionName "1.0"


    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'LICENSE.txt'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
  compile 'com.google.android.gms:play-services-gcm:9.6.1'
    compile 'com.android.support:appcompat-v7:24.2.0'

}

apply plugin: 'com.google.gms.google-services'

Я отримую "Не можу завантажити Google-services.jar (com.google.gms: google-services: 3.0.0)
— Andrew S

1
Це посилання не пропонує інших порад, ніж те, що ви дали, і посилання застаріло. Номери версій з цього часу досить змінилися.
— Andrew S

@AndrewS, будь ласка, надайте своє build.gradle. Ви можете задати це як питання.
— IntelliJ Amiya

@AndrewS, будь ласка, перевіри мою відредаговану відповідь. після цьогоclean-rebuild-gradle
— IntelliJ Amiya

11

GCM був rebrandedу FirebaseCloud Messaging (FCM). Якщо ви хочете скористатися, com.google.android.gms:play-services:9.0.0прочитайте цю статтю FCM . Зробити це, можливо, вдасться, модифікуйте свій build.gradleфайл, щоб використовувати плагін.

buildscript {
  dependencies {
    // Add this line
    classpath 'com.google.gms:google-services:3.0.0'
  }
}

4
Однак у Error:Execution failed for task ':app:processDebugGoogleServices'. > Missing api_key/current_key object
— мене з’явилася

7
@ShajeelAfzal вирішує цю проблему, створивши google-service.json developers.google.com/mobile/add
— raditya gumay

Мені довелося імпортувати мій проект у консоль firebase та відновити файл google-service.json, щоб він працював на мене. Імпортуйте свій проект у firebase, а потім натисніть кнопку "керувати", ви можете завантажити новий файл, якщо вищезгадане не працює для вас
— paul на stepupsoftware

Чому 3.0.0 ? Це не стара версія. Я вважаю, ми вже на 9.4.0 .
— ІгорГанапольський

1
@IgorGanapolsky версія 3.0.0 призначена для плагіну gradle, 9.4.0 - для бібліотеки
— alvinmeimoun

1

Найпростіший спосіб, який я знайшов, - це використовувати останню версію для всіх.

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
})
//apply plugin: 'com.google.gms.google-services' //Firebase
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha8'
compile 'com.google.firebase:firebase-auth:10.2.6'
compile 'com.google.android.gms:play-services-auth:10.2.6' //10.2.6
compile 'com.google.firebase:firebase-core:10.2.6' // used for FCM
compile 'com.google.firebase:firebase-messaging:10.2.6' // used for FCM
testCompile 'junit:junit:4.12'
//  apply plugin: 'com.google.gms.google-services'

}

ПОЯСНЕННЯ

застосувати плагін: 'com.google.gms.google-services' // Додати це внизу.

  • Спочатку apply plugin: 'com.google.gms.google-services'// Додайте це внизу.
  • Потім додайте їх до залежностей

    compile 'com.google.firebase:firebase-auth:10.2.6' // make suere це в останній версії.

    compile 'com.google.android.gms:play-services-auth:10.2.6' //10.2.6 Останні

    compile 'com.google.firebase:firebase-core:10.2.6' // використовується для FCM

    compile 'com.google.firebase:firebase-messaging:10.2.6' // використовується для FCM

Припустимо, якщо у вас є firebase-auth 10.2.6, що є останньою сьогодні 25 травня 2017 року, але одночасно ви використовуєте play-services-auth: 9.0.0 або нижче останнього, вони обоє не можуть встановити з'єднання та показати ви помилка

Я сподіваюся, що це допомогло.


0

Я вирішив цю складну проблему, змінивши рядок у Gradle на

compile 'com.google.android.gms:play-services:9.0.0' //or latest version

0

При зміні служб відтворення на версію вище 10.2.1 мої залежності почали не вдається вирішити.

Я дізнався, що зміна наступної URL-адреси Maven вирішила проблему:

maven { url 'https://raw.githubusercontent.com/onepf/OPF-mvn-repo/master/' }

до

maven { url 'https://github.com/onepf/OPF-mvn-repo/raw/master/' }

Можливо, що зміна URL-адреси уникає кешування в gradle або maven, і це вирішує.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.