Оновлення до Служб 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.