web-dev-qa-db-ja.com

com.google.Android.gms.internal.zzbfmが見つからないため、zzbfmクラスファイルにアクセスできません

私はAndroidアプリプロジェクトをGCMからFCMに移行しています。これには、Android StudioでFirebaseアシスタントツールを使用しますそして、Google開発者ガイドの指示に従いました。すべてが順調に進み、アシスタントツールに従ってFCMのアプリコードを変更しました。ここで、アプリを実行してテストするときです。次の奇妙なエラーが発生しました:

com.google.Android.gms.internal.zzbfmが見つからないため、zzbfmクラスファイルにアクセスできません

Googleマップを使用してマーカーの位置を設定しようとすると、このエラーが発生します。これが私のアプリレベルのgradleです:

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'
7
Ruchir
To resolve your problem, first i will ask you to always use specified and updated version.
1. Replace + with specific version here : classpath 'io.fabric.tools:gradle:1.25.4'
2. Try to use same version for now to run the 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. Use updated version of google play service

    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'

This will fix your problem.
3

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
Tejas Pandya

ほとんどの場合、play-servicesと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'

選択したバージョンは、v17.0.0のためにバージョン17より前の最後のバージョンです(android-xが必要です(play-service内))

Build.gradle(project)でgoogle-serviceを更新することを忘れないでください

classpath 'com.google.gms:google-services:4.3.0'        
1
Gabriel Perez

AndroidXの移行後に同じ問題が発生しましたgms libraryのバージョンをmaps and locationのように変更することで解決しました

implementation 'com.google.Android.gms:play-services-maps:15.0.1'
implementation 'com.google.Android.gms:play-services-location:15.0.1'
0
Pravin Yadav

最新SDKバージョン に関する公式ドキュメントによると、次のコード行を変更してください:

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

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

そして、 Google Play Servicesのセットアップ に関する公式ドキュメントに従って、次のコード行を変更してください:

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ファイル。

0
Alex Mamo