Android: Ошибка получения: не удалось выполнить задачу ': app: processDebugGoogleServices' после добавления новой зависимости - PullRequest
0 голосов
/ 25 августа 2018

Полная трассировка ошибок:

Error:Execution failed for task ':app:processDebugGoogleServices'.
> Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 11.4.2.

Ошибка возникает при добавлении последней зависимости:

compile 'com.google.firebase:firebase-ml-model-interpreter:16.2.0'

Вот мои зависимости gradle:

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.jakewharton:butterknife:8.6.0'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.6.0'
    compile 'com.facebook.android:facebook-login:4.27.0'
    compile 'com.firebaseui:firebase-ui-database:2.0.1'
    compile 'com.firebaseui:firebase-ui-storage:2.0.1'
    compile 'com.firebase:firebase-jobdispatcher:0.6.0'
    compile 'com.google.firebase:firebase-core:11.4.2'
    compile 'com.google.firebase:firebase-auth:11.4.2'
    compile 'com.google.firebase:firebase-ads:11.4.2'
    compile 'com.google.firebase:firebase-database:11.4.2'
    compile 'com.google.firebase:firebase-storage:11.4.2'
    compile 'com.google.firebase:firebase-messaging:11.4.2'
    compile 'com.android.support:design:25.4.0'
    compile 'com.android.support:appcompat-v7:25.4.0'
    compile 'com.android.support:recyclerview-v7:25.4.0'
    compile 'com.android.support:cardview-v7:25.4.0'
    compile 'com.android.support:support-v4:25.4.0'
    implementation 'com.android.support:support-v4:25.4.0'
    implementation 'com.android.support:support-vector-drawable:25.4.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    implementation 'com.android.support.constraint:constraint-layout:1.0.2'
    testCompile 'junit:junit:4.12'
    compile 'com.github.chrisbanes:PhotoView:2.1.3'
    //network
    compile 'com.squareup.retrofit2:retrofit:2.1.0'
    compile 'com.squareup.retrofit2:converter-gson:2.1.0'
    compile('com.crashlytics.sdk.android:crashlytics:2.6.8@aar') {
        transitive = true
    }
    //billing
    compile 'com.anjlab.android.iab.v3:library:1.0.44'
    //tutorial
    compile 'com.github.popalay:tutors:1.0.6'
    //rate dialog
    compile 'io.github.kobakei:ratethisapp:1.2.0'
    compile 'com.github.tozny:java-aes-crypto:1.1.0'
    compile 'com.flurry.android:analytics:8.1.0'
    compile 'com.github.ceryle:RadioRealButton:v2.1.1'
    compile 'com.github.drawers:SpinnerDatePicker:1.0.6'
/*    compile 'com.siclo.ezphotopick:library:1.0.8'
    implementation project(':EZPhotoPickerLib')*/
    compile project(path: ':EZPhotoPickerLib')

    compile "commons-io:commons-io:2.6"

    compile "com.github.hotchemi:permissionsdispatcher:3.1.0"
    annotationProcessor "com.github.hotchemi:permissionsdispatcher-processor:3.1.0"

    compile 'org.tensorflow:tensorflow-lite:+'

    compile 'com.google.firebase:firebase-ml-model-interpreter:16.2.0'

}

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

Пробовал синхронизировать библиотеки, но я постоянно получаю эту ошибку, независимо от того, что я делаю.

Ответы [ 3 ]

0 голосов
/ 27 августа 2018

Для зависимостей Firebase:

  1. Всегда проверяйте руководство «Приступая к работе» для версий SDK / плагинов: https://firebase.google.com/docs/android/setup Последняя версия плагина google-services по состоянию на август 2018 года: 4.0.1

  2. Начиная с мая 2018 года, сервисы Google Play и SDK Firebase для Android начали использовать новую систему управления версиями, соответствующую семантическому управлению версиями. После обновления всех соответствующих SDK до версии 15.0.0+ (ознакомьтесь с документацией по каждому API) вам больше не нужно использовать идентичные версии для каждого продвигаемого API. Подробности смотрите в блоге ниже (но игнорируйте конкретные версии в посте, так как они уже не самые последние. Обратитесь к документации Firebase для получения последних версий): http://www.googblogs.com/announcing-new-sdk-versioning-in-google-play-services-and-firebase/

Кроме того, версии Firebase SDK: https://firebase.google.com/support/release-notes/android

0 голосов
/ 27 августа 2018

Ссылка: https://firebase.google.com/docs/ml-kit/android/use-custom-models

В качестве последнего обновления обновите ответ
еще раз проверьте официальную документацию сайта

Используйте модель TensorFlow Lite для вывода с ML Kitна Android Вы можете использовать ML Kit для вывода на устройство с моделью TensorFlow Lite.

Для этого API требуется Android SDK уровня 16 (Jelly Bean) или новее.

См. Пример быстрого запуска ML Kit на GitHub для примера использования этого API или попробуйте кодовую метку.

Прежде чем начать Если вы еще не добавили Firebase в свое приложение, сделайте это, выполнив шаги в Руководство по началу работы .Включите зависимости для ML Kit в файл build.gradle уровня приложения:

dependencies {
  // ...

  implementation 'com.google.firebase:firebase-ml-model-interpreter:16.2.0'
}

Преобразуйте модель TensorFlow, которую вы хотите использовать, в формат TensorFlow Lite (tflite).См. TOCO: Оптимизирующий конвертер TensorFlow Lite.

Размещение или связывание вашей модели Прежде чем вы сможете использовать модель TensorFlow Lite для вывода в своем приложении, вы должны сделать эту модель доступной для ML Kit.ML Kit может использовать модели TensorFlow Lite, размещенные удаленно с помощью Firebase, хранящиеся локально на устройстве или оба.

Обе модели размещают на Firebase и хранят модель локально, вы можете гарантировать, что самая последняя версиямодель используется, когда она доступна, но функции ML вашего приложения по-прежнему работают, когда модель, размещенная в Firebase, недоступна.

Безопасность модели Независимо от того, как вы делаете ваши модели TensorFlow Lite доступными для ML Kit, ML Kitсохраняет их в стандартном сериализованном формате protobuf в локальном хранилище.

Теоретически это означает, что любой может скопировать вашу модель.Однако на практике большинство моделей настолько специфичны для конкретного приложения и запутываются оптимизацией, что риск подобен риску конкурентов, разбирающих и повторно использующих ваш код.Тем не менее, вы должны знать об этом риске, прежде чем использовать пользовательскую модель в своем приложении.

На уровне API Android 21 (Lollipop) и новее модель загружается в каталог , которыйисключен из автоматического резервного копирования.

На уровне Android API уровня 20 и старше модель загружается в каталог с именем com.google.firebase.ml.custom.models в внутреннем приложении-privateместо хранения.Если вы включили резервное копирование файлов с помощью BackupAgent, вы можете исключить этот каталог.

Для более подробной информации, пожалуйста, проверьте https://firebase.google.com/docs/ml-kit/android/use-custom-models

0 голосов
/ 25 августа 2018

Перейдите на ваш уровень сборки проекта и замените

    classpath 'com.google.gms:google-services:3.x.x'

на

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

и синхронизируйте ваш код, потому что в своем приложении вы используете последние интерпретаторы модального интерпретатора, которые имеютверсия зависимостей, которые совместимы с последней версией gsm.Принимая во внимание, что вы используете старую версию google.gsm, которая путает конфликт версий.

если вы обновите google.gsm до 4.xx, то, возможно, вам придется обновить другие зависимости Google до последних версий.И вы также используете firebase.ui: 2.xx При обновлении этого пользовательского интерфейса до firebase.ui: 3.xx тогда вам также нужно изменить свой код, потому что некоторые из методов ui: 2.xx также заменены новыми методами 1010 * Другой крупный *

...