Невозможно получить доступ к файлу класса zzbfm для com.google.android.gms.internal.zzbfm not found

Я переношу свой проект приложения для Android с GCM на FCM. Для этого я использую помощник Firebase в Android Studio и следую инструкциям из руководства разработчика Google. Все прошло нормально, и мой код приложения для FCM был изменен в соответствии с инструментом Assistant. Пришло время запустить и протестировать приложение. И я получил следующую странную ошибку:

cannot access zzbfm class file for com.google.android.gms.internal.zzbfm not found

Я получаю эту ошибку, когда использую карты Google и пытаюсь установить положение маркера. Вот мой градиент уровня приложения:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
    mavenCentral()
    maven { url 'https://dl.bintray.com/kennyc1012/maven' }
}


android {
    signingConfigs {
        msapp {
        }
    }

    compileSdkVersion 26
    buildToolsVersion '27.0.3'
    defaultConfig {
        applicationId "com.package"
        minSdkVersion 16
        targetSdkVersion 28
        multiDexEnabled true
        useLibrary 'org.apache.http.legacy'
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_7
            targetCompatibility JavaVersion.VERSION_1_7
        }
        renderscriptTargetApi 18
        renderscriptSupportModeEnabled true
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }
    buildTypes {

        release {
            lintOptions {
                checkReleaseBuilds false
                abortOnError false
            }
            minifyEnabled false
            shrinkResources false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    //Default
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.google.firebase:firebase-messaging:11.8.0'
    testImplementation 'junit:junit:4.12'

    //modules
    implementation 'com.facebook.android:facebook-android-sdk:4.+'
    //jar files
    implementation files('libs/classes.jar')
    implementation files('libs/YouTubeAndroidPlayerApi.jar')

    //google repos
    implementation 'com.android.support:appcompat-v7:26.0.0'
    implementation 'com.android.support:support-v4:26.0.0'
    implementation 'com.android.support:recyclerview-v7:26.0.0'
    implementation 'com.google.android.gms:play-services:11.8.0'
    implementation 'com.google.android.gms:play-services-analytics:11.8.0'
    implementation 'com.google.android.gms:play-services-maps:11.8.0'
    implementation 'com.android.support:design:26.0.0'


    //square lib
    implementation 'com.squareup.retrofit2:converter-gson:2.0.0'
    //compile 'com.squareup.leakcanary:leakcanary-android:1.5'

    //text manupulation
    implementation 'commons-lang:commons-lang:2.6'

    //permission library.
    implementation 'com.karumi:dexter:5.0.0'

    implementation 'com.google.firebase:firebase-core:16.0.3'
}

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

вы решили свою проблему?

Tejas Pandya 10.09.2018 08:32

вы можете попробовать сделать недействительным кеш IDE и перезапустить. Меню находится в файле. В случае, если что-то не обновлялось правильно и старые файлы кешировались

Stefano Mtangoo 24.10.2020 19:31
9
2
15 128
6

Ответы 6

Установите одинаковую версию Firebase и библиотеки Google. Для такого примера

      implementation 'com.google.android.gms:play-services:12.0.1'
      implementation 'com.google.android.gms:play-services-analytics:12.0.1'
      implementation 'com.google.android.gms:play-services-maps:12.0.1'
        //your firebase lib version to the same version 
      implementation 'com.google.firebase:firebase-core:12.0.1'

Чтобы решить вашу проблему, сначала я попрошу вас всегда использовать указанную и обновленную версию. 1. Замените + на конкретную версию здесь: classpath 'io.fabric.tools:gradle:1.25.4' 2. Попробуйте использовать ту же версию для запуска apk,

  compileSdkVersion 27
  buildToolsVersion '27.0.3'

  targetSdkVersion 27
  implementation 'com.android.support:appcompat-v7:27.1.1'
  implementation 'com.android.support:support-v4:27.1.1'
  implementation 'com.android.support:recyclerview-v7:27.1.1'

3. Используйте обновленную версию сервиса Google Play.

 implementation 'com.google.android.gms:play-services:16.0.3'
 implementation 'com.google.android.gms:play-services-analytics:16.0.3'
 implementation 'com.google.android.gms:play-services-maps:15.0.1'

Это решит вашу проблему.

Согласно официальной документации относительно Последние версии SDK, пожалуйста, измените следующую строку кода:

implementation 'com.google.firebase:firebase-messaging:11.8.0'

к

implementation 'com.google.firebase:firebase-messaging:17.3.1'

И согласно официальной документации относительно настроить сервисы Google Play, пожалуйста, измените следующие строки кода:

implementation 'com.google.android.gms:play-services:11.8.0'
implementation 'com.google.android.gms:play-services-analytics:11.8.0'
implementation 'com.google.android.gms:play-services-maps:11.8.0'

к

//implementation 'com.google.android.gms:play-services:11.8.0' //Commented line
implementation 'com.google.android.gms:play-services-analytics:16.0.3'
implementation 'com.google.android.gms:play-services-maps:15.0.1

Также убедитесь, что у вас есть:

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

В вашем файле build.gradle верхнего уровня.

В большинстве случаев требуется обновить игровые сервисы и зависимости версий firebase, возможно, последний доступный, если вы используете androidx, но если нет:

Попробуйте проверить это maven_repository и выбрать какую-нибудь версию, которая поможет вам это исправить. Например:

implementation 'com.google.android.gms:play-services-analytics:16.0.8'
implementation 'com.google.android.gms:play-services-maps:16.1.0'
implementation 'com.google.firebase:firebase-messaging:15.0.2'

выбранная версия является последней перед версией 17 из-за того, что v17.0.0 требует androidx (в play-service)

Не забудьте обновить свой google-сервис в своем build.gradle (проекте)

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

Я столкнулся с той же проблемой после переноса AndroidX и Решено путем изменения версии библиотека gms на карты и местоположение, как показано ниже

implementation 'com.google.android.gms:play-services-maps:15.0.1'
implementation 'com.google.android.gms:play-services-location:15.0.1'

Просто обновите версии библиотек "...... gms: play-services ....." до последних Чтобы проверить последние версии, обратитесь к этому ссылка

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