Ошибка: тип com.google.android.gms.common.internal.zzg упоминается как интерфейс из com.google.android.gms.internal.zzij.

Я пытаюсь исправить некоторые функции своего приложения после обновления Android Studio 3.2.1. Но, похоже, я получаю больше ошибок. Когда я пытаюсь перестроить приложение. Получил этот мессенджер:

Error: Type com.google.android.gms.common.internal.zzg is referenced as an interface from `com.google.android.gms.internal.zzij`.

Но мои build.gradle (Module: app) и build.gradle (Project) выглядят нормально. Вот мой build.gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    buildToolsVersion '28.0.3'
    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        applicationId "com.xx.xx"
        minSdkVersion 15
        targetSdkVersion 28
        multiDexEnabled = true
        versionCode 7x
        versionName "1.0.7x"
        testInstrumentationRunner 
    "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 
    'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
    configurations.all {
        resolutionStrategy.force 'com.google.code.findbugs:jsr305:3.0.1'
        exclude group: 'com.squareup.okhttp3', module: 'okhttp'
    }
    lintOptions {
        checkReleaseBuilds false
    }
    }

    dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    androidTestImplementation('com.android.support.test.espresso:espresso- 
    core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    implementation files('libs/json_simple-1.1.jar')
    implementation('com.omertron:themoviedbapi:4.2') {
        exclude group: 'org.apache.httpcomponents', module: 'httpclient'
        exclude module: 'junit'
    }
    implementation 'com.android.support:multidex:1.0.3'
    implementation files('libs/okhttp-3.8.1.jar')
    implementation files('libs/okio-1.13.0.jar')
    implementation 'de.hdodenhof:circleimageview:2.2.0'
    implementation 'com.google.android.gms:play-services-places:16.0.0'
    //noinspection GradleCompatible
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.google.guava:guava:24.1-jre'
    //noinspection UseOfBundledGooglePlayServices
    implementation 'com.google.android.gms:play-services:12.0.1'
    implementation 'com.googlecode.libphonenumber:libphonenumber:7.3.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.google.android.gms:play-services-maps:16.0.0'
    implementation 'com.android.support:design:28.0.0'
    implementation 'com.wang.avi:library:2.1.3'
    implementation 'com.baoyz.swipemenulistview:library:1.3.0'
    implementation 'com.oguzdev:CircularFloatingActionMenu:1.0.2'
    implementation 'javax.mail:mail:1.5.0-b01'
    implementation 'com.google.firebase:firebase-messaging:17.3.4'
    implementation 'com.google.firebase:firebase-core:16.0.4'
    implementation 'com.google.firebase:firebase-auth:16.0.5'

    implementation 'org.apache.httpcomponents:httpclient-android:4.3.5.1'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.github.orangegangsters:swipy:1.2.3@aar'
    implementation 'io.michaelrocks:libphonenumber-android:8.9.0'
    implementation 'com.github.joielechong:countrycodepicker:2.1.5'
    testImplementation 'junit:junit:4.12'
    implementation files('libs/xxx.jar')
}

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

И вот мой build.gradle (проект):

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

buildscript {
repositories {

    google()
    jcenter()
    maven { url "https://jitpack.io" }

}
dependencies {
    classpath 'com.android.tools.build:gradle:3.2.1'
    classpath 'com.google.gms:google-services:4.1.0'
}
}

allprojects {
//    apply plugin: 'com.android.application'
repositories {
    maven {
        url "https://maven.google.com"
    }
    google()
    jcenter()

    maven{
        url "https://jitpack.io"
    }

}
}

task clean(type: Delete) {
delete rootProject.buildDir
}

Я попытался найти решение этой проблемы. Но я ничего не нахожу. Итак, кто-нибудь может мне помочь?

Избавьтесь от комплекта play-services и вставляйте только то, что вам нужно. Все зависимости GMS должны иметь одну и ту же версию до v15. У вас есть v12 всего, а затем v16 карт. Избавьтесь от банок с помощью okhttp и okio и получите их от maven, чтобы избежать потенциальных конфликтов. И, во имя всех святых, систематизируйте свои зависимости по абзацам, неудивительно, что вы не можете видеть сквозь этот беспорядок.

Eugen Pechanec 26.10.2018 13:49
7
1
9 440
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Возможно, вам потребуется удалить implementation 'com.google.android.gms:play-services:12.0.1'

И замените его на

 implementation("com.google.android.gms:play-services-gcm:12.0.1") {
    exclude group: "com.google.android.gms"
}

ПЕРЕД enter image description here AFTERenter image description here

Некоторые люди просто недооценивают ответы других людей!

joash 25.04.2019 06:21

есть человек, который троллит меня по переполнению стека, сразу же помечает мои ответы как бесполезные

joash 26.04.2019 11:25

Дорогой Иоас, я не знаю, кто пытается тебя троллить. Но большое спасибо за вашу помощь (я исправил, но все же спасибо) и проголосовал за вас.

TheZero 26.04.2019 21:55

У меня такая же ошибка, но приведенное выше решение не работает для меня. @joash Не могли бы вы добавить больше объяснений в свой ответ?

Neel Dsouza 08.08.2020 12:20

@NeelDsouza, идея состоит в том, чтобы вы пытались увидеть, какая библиотека (-ы) включена дважды или более (что может быть вашим случаем), и удалить ее из того плагина, который идет с ним, с помощью исключать. В Gradle есть способы перечисления включенных библиотек developer.android.com/studio/build/gradle-tips

joash 09.08.2020 13:30

Обновление моих зависимостей com.google.android.gms до последней версии устранило мою проблему. Вы можете обновить свои зависимости из File -> Project Structure -> Dependencies (Click update) или напрямую перейти на нужную вам версию в файле build.gradle, как показано ниже.

    implementation 'com.google.android.gms:play-services-base:17.3.0'
    implementation "com.google.android.gms:play-services-ads:19.3.0"

Другие вопросы по теме