アプリケーションを開発していますが、次のエラーが発生します。
error: cannot access zzbgl
class file for com.google.Android.gms.internal.zzbgl not found
StackOverflowに4日前に投稿されたのと同じエラーがある質問があることは知っていますが、私の場合は回答が役に立ちませんでした。 (私は話している これ )
プロジェクトでFirebase Analyticsを設定した直後にエラーが表示されました。
私のbuild.gradle(Module:app)ファイルはこれです:
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'
Android {
compileSdkVersion 26
buildToolsVersion '27.0.3'
useLibrary 'org.Apache.http.legacy'
defaultConfig {
applicationId 'com.geoactio.montferri'
minSdkVersion 14
targetSdkVersion 26
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.txt'
}
}
dependencies {
implementation 'com.Android.support:multidex:1.0.3'
implementation 'com.Android.support:appcompat-v7:26.1.0'
// compile 'com.google.code.ksoap2-Android:ksoap2-Android:3.6.0'
implementation 'com.google.Android.gms:play-services:12.0.1'
//implementation 'com.google.Android.gms:play-services-maps:15.0.1'
//implementation 'com.google.Android.gms:play-services-location:15.0.1'
implementation "com.google.Android.gms:play-services-base:15.0.1"
implementation 'com.navercorp.pulltorefresh:library:3.2.3@aar'
}
productFlavors {
}
lintOptions {
disable 'MissingTranslation'
}
dexOptions {
javaMaxHeapSize "4g"
preDexLibraries = false
}
}
repositories {
maven { url 'https://oss.sonatype.org/content/repositories/ksoap2-Android-releases' }
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.firebase:firebase-messaging:17.1.0'
implementation('com.crashlytics.sdk.Android:crashlytics:2.9.4@aar') {
transitive = true;
}
}
apply plugin: 'com.google.gms.google-services'
私のbuild.gradle(Project:myPorojectName)ファイルはこれです:
buildscript {
repositories {
jcenter()
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
dependencies {
classpath 'com.Android.tools.build:gradle:3.1.4'
classpath 'com.google.gms:google-services:4.1.0'
}
}
allprojects {
repositories {
jcenter()
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
}
そして、エラーをクリックすると、here、new MarkerOptions()の直後に私を導きます:
mapView.addMarker(new MarkerOptions().position(new LatLng(puntomarker.getLatitud(), puntomarker.getLongitud()))
.zIndex(0.5f)
.anchor(0.5f, 0.5f)
.title(puntomarker.getId() + "")
.snippet(puntomarker.getNombre())
.icon(BitmapDescriptorFactory.fromBitmap(((BitmapDrawable) marker).getBitmap())));
(存在mapViewaGoogleMapインスタンス)。
誰かがエラーを見て解決できることを願っています。これを解決するためにさらに情報が必要な場合は、お知らせください。
Google APIリリースノート は、結合されたplay-services
2018年4月に終了したライブラリ:
15.0.0以降、すべてのGoogle Play開発者サービスコンポーネントを取り込むためのplay-servicesエイリアスターゲットはなくなります。これはしばらくの間に対して推奨されてきました。
次のように、結合されたGoogle Play開発者サービスターゲットに単一の依存関係を指定することはできなくなりました。
implementation 'com.google.Android.gms:play-services:12.0.1'.
これが以前のバージョンでサポートされていた場合、Google Playライブラリは必要以上に[〜#〜] all [〜#〜]で取り込まれました。 セットアップガイド の表1のAPIのリストを参照し、アプリが使用する特定のAPIのみを含めます。
Google Mavenリポジトリ をチェックすると、バージョン12.0.1が統合されたplay-servicesターゲットの最後のバージョンであることが確認されます。
したがって、上記の実装を削除して、以下のみを使用してください。
implementation "com.google.Android.gms:play-services-base:15.0.1"
他の再生サービスも使用している場合は、それらを個別の依存関係として追加してください。
エラーの主な理由は、プレイサービスライブラリに2つの異なるバージョンを使用していることです
implementation 'com.google.Android.gms:play-services:12.0.1'
ここにあります12.0.1
implementation "com.google.Android.gms:play-services-base:15.0.1"
ここでは15.0.1。
どこでも同じバージョンの関連ライブラリを使用するようにしてください。
12.0.1はもうないので、単に依存関係を変更する必要があるだけです。
implementation 'com.google.Android.gms:play-services:12.0.1'
に
implementation 'com.google.Android.gms:play-services-base:15.0.1'
そして同期Gradleを押します
これがあなたに役立つことを願っています
すべての依存関係のバージョンを更新します。一般に、このエラーは、いくつかの新しい依存関係と古い依存関係で作業している場合に発生します。