Android Studio- Jenis program sudah ada: com.google.android.gms.internal.measurement.zzwp

90

Kemarin, aplikasi saya berfungsi dengan baik.

Hari ini, saya tidak tahu mengapa, aplikasi tidak dapat dikompilasi lagi setelah saya membuka kembali Android Studio.

Kesalahan yang ditampilkan adalah

Program type already present: com.google.android.gms.internal.measurement.zzwp
Message{kind=ERROR, text=Program type already present: com.google.android.gms.internal.measurement.zzwp, sources=[Unknown source file], tool name=Optional.of(D8)}

Saya benar-benar tidak tahu apa yang sedang terjadi, saya telah mencari semuanya dan tidak ada yang berhasil. Jika seseorang dapat membantu saya, saya akan sangat menghargai. Saya mengubah semua dependensi dan pustaka untuk mencoba menyelesaikannya, tetapi tidak ada yang berhasil.

Inilah Proyek build.gradle

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
        classpath 'com.google.gms:google-services:3.2.1'


        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
        google()
        jcenter()
    }
}

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

Dan ini adalah Modul build.gradle saya: app

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "com.doctordirectory"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

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

dependencies {
    implementation fileTree(dir: 'libs')
    implementation 'com.android.support:appcompat-v7:27.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.0'
    implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'

    implementation ('com.facebook.android:audience-network-sdk:4.28.0',{
        exclude group: 'com.google.android.gms'
    })
    implementation 'com.facebook.android:facebook-login:4.32.0'
    implementation 'com.android.support:multidex:1.0.3'

    implementation 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'

    implementation 'com.android.support:support-v4:27.1.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

    implementation 'com.google.firebase:firebase-core:15.0.0'
    implementation 'com.google.firebase:firebase-database:15.0.0'
    implementation 'com.google.firebase:firebase-crash:15.0.0'
    implementation 'com.google.firebase:firebase-auth:15.0.0'
    implementation 'com.google.firebase:firebase-storage:15.0.0'
    implementation 'com.firebaseui:firebase-ui-database:3.3.1'

    implementation 'com.google.android.gms:play-services-auth:15.0.0'
    implementation 'com.google.android.gms:play-services-plus:15.0.0'
    implementation 'com.google.android.gms:play-services-location:15.0.0'

    implementation 'com.android.support:cardview-v7:27.1.0'
    implementation 'com.android.support:recyclerview-v7:27.1.0'

    implementation 'com.squareup.picasso:picasso:2.5.2'
    implementation 'com.squareup.retrofit2:retrofit:2.3.0'
    implementation 'com.squareup.retrofit2:converter-gson:2.3.0'

    implementation 'com.stepstone.apprating:app-rating:2.2.0'
    implementation 'com.android.support:design:27.1.0'
    implementation 'com.android.support:design:27.1.0'
    implementation 'com.github.lguipeng:BubbleView:1.0.1'

    implementation 'uk.co.chrisjenx:calligraphy:2.3.0'

    implementation 'com.miguelcatalan:materialsearchview:1.4.0'

    implementation 'com.github.MdFarhanRaja:SearchableSpinner:1.9'

    implementation 'com.github.sillebille:dynamic-calendar:1.0.1'

    implementation 'com.google.api-client:google-api-client:1.22.0'
    implementation 'com.google.api-client:google-api-client-android:1.22.0'
    implementation 'com.google.apis:google-api-services-people:v1-rev4-1.22.0'
}

apply plugin: 'com.google.gms.google-services'
Caio Araújo
sumber
2
Ini pasti mengapa orang tidak suka dependensi yang memperbarui otomatis ...
user253751
1
@immibis Tidak mengerti. Apakah maksud Anda firebase memperbarui secara otomatis meskipun kami menyebutkan versi tertentu?
rpattabi

Jawaban:

95

Mengatasi masalah ini setelah memperbarui firebase dependencieske yang terbaru misalnya com.google.firebase:firebase-core:15.0.0untuk com.google.firebase:firebase-core:15.0.2 Dapatkan Daftar Terbaru dari sini

Semua perubahan lainnya dibuat dalam daftar di bawah ini

  dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:27.1.1'
        implementation 'com.android.support:customtabs:27.1.1'
        implementation 'com.android.support.constraint:constraint-layout:1.1.0'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

        implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'

        implementation 'com.facebook.android:audience-network-sdk:4.28.0'
        implementation 'com.facebook.android:facebook-login:4.32.0'
        implementation 'com.android.support:multidex:1.0.3'

        implementation 'com.readystatesoftware.sqliteasset:sqliteassethelper:2.0.1'

        implementation 'com.android.support:support-v4:27.1.1'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.2'
        androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

        implementation 'com.google.firebase:firebase-core:15.0.2'
        implementation 'com.google.firebase:firebase-database:15.0.0'
        implementation 'com.google.firebase:firebase-crash:15.0.2'
        implementation 'com.google.firebase:firebase-auth:15.0.0'
        implementation 'com.google.firebase:firebase-storage:15.0.2'
        implementation 'com.firebaseui:firebase-ui-database:3.3.1'

        implementation 'com.google.android.gms:play-services-auth:15.0.0'
        implementation 'com.google.android.gms:play-services-plus:15.0.0'
        implementation 'com.google.android.gms:play-services-location:15.0.0'

        implementation 'com.android.support:cardview-v7:27.1.1'
        implementation 'com.android.support:recyclerview-v7:27.1.1'

        implementation 'com.squareup.picasso:picasso:2.5.2'
        implementation 'com.squareup.retrofit2:retrofit:2.3.0'
        implementation 'com.squareup.retrofit2:converter-gson:2.3.0'

        implementation 'com.stepstone.apprating:app-rating:2.2.0'
        implementation 'com.android.support:design:27.1.1'
        implementation 'com.github.lguipeng:BubbleView:1.0.1'

        implementation 'uk.co.chrisjenx:calligraphy:2.3.0'

        implementation 'com.miguelcatalan:materialsearchview:1.4.0'

        implementation 'com.github.MdFarhanRaja:SearchableSpinner:1.9'

        implementation 'com.github.sillebille:dynamic-calendar:1.0.1'

        implementation 'com.google.api-client:google-api-client:1.22.0'
        implementation 'com.google.api-client:google-api-client-android:1.22.0'
        implementation 'com.google.apis:google-api-services-people:v1-rev4-1.22.0'
    }

2) Dalam pembaruan file build.gradle tingkat atas dari classpath 'com.google.gms:google-services:3.1.1menjadiclasspath 'com.google.gms:google-services:3.2.1

MJM
sumber
5
Solusi ini berhasil. Firebase sekarang mendistribusikan paket mereka dengan nomor versi independen, pastikan semua paket di build.gradle adalah yang terbaru.
Tri Nguyen
Berhasil. Terima kasih banyak. Saya mencoba memperbarui banyak hal, tetapi saya tidak pernah membayangkan bahwa firebase mengubahnya. Terima kasih.
Caio Araújo
Ada baiknya Anda mengedit dan menambahkan bagian kedua dari jawaban saya, karena jawaban Anda diterima;)
Ragaisis
Saya juga mengalami masalah lain "Jenis program sudah ada: org.apache.http.io.HttpMessageParser Pesan {kind = ERROR, text = Jenis program sudah ada: org.apache.http.io.HttpMessageParser, sources = [Sumber tidak dikenal file], tool name = Opsional.of (D8)}, "m menggunakan versi terbaru dari firebase dan versi terbaru dukungan, pustaka desain, juga build.gradle proyek saya memegang classpath 'com.android.tools.build:gradle:3.1 .2 'classpath' com.google.gms: google-services: 4.0.0 ', masih terjadi masalah ..
tidak dapat diubah
1
Saya telah melihat dari waktu ke waktu bahwa solusi terbaik adalah memperbarui dependensi ini ke versi terbaru yang muncul DI SITUS MEREKA, bukan yang terbaru yang muncul di file gradle
Razvan
21

Saya juga mendapatkan kesalahan ini dan solusi saya untuk masalah ini

1) Perbarui versi Firbase agar tidak bergantung pada versi layanan Google Play

implementation "com.google.firebase:firebase-messaging:15.0.2"

Anda dapat memeriksa versi terbaru di sini https://firebase.google.com/support/release-notes/android#latest_sdk_versions

2) Di tingkat atas file build.gradle perbarui layanan google dari 3.1.1 ke 3. 2 .1

buildscript {
    dependencies {

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

    }
 }
Ragaisis
sumber
12

Saya hanya berubah

implementation 'com.google.firebase:firebase-crash:15.0.0'

untuk

implementation 'com.google.firebase:firebase-crash:15.0.2'

berhasil.

Richard Hsieh
sumber
7

Firebase adalah alasan mengapa mereka memperbarui nomor versi seolah-olah mereka tidak peduli dengan pengembangnya.

Hal pertama yang pertama. Perbarui jalur kelas di gradle tingkat proyek

dependencies {

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

    }

Selanjutnya, Apa pun alat yang mungkin Anda gunakan seperti analitik, tautan dinamis, dan sebagainya. Gunakan ketergantungan berversi yang sesuai.

https://firebase.google.com/support/release-notes/android

Dalam kasus saya, saya menggunakan pengujian A / B melalui konfigurasi jarak jauh, jadi saya perlu memperbaruinya dari

implementation 'com.google.firebase:firebase-config:15.0.0'

untuk

implementation 'com.google.firebase:firebase-config:15.0.2'

Ini seharusnya berfungsi tanpa kesalahan apa pun. Dan juga, harap posting masalah semacam ini ke Firebase sehingga mereka tidak melakukan perubahan semacam ini tanpa pemberitahuan sebelumnya atau tanpa dokumentasi yang tepat.

Ashok Kumar S.
sumber
2
"Firebase adalah alasan mereka memperbarui nomor versi seolah-olah mereka tidak peduli dengan pengembangnya." Kata yang bagus 👌
Lenin Raj Rajasekaran
6

Perbarui dependensi firebase Anda.

1. Tingkat proyek build.gradle

Perbarui google.gmsversi ke yang terbaru. Lacak rilis terbaru . Pada saat jawaban terbaru adalah 4.1.0.

buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:4.1.0' // google-services plugin
    }
}

allprojects {
    // ...
    repositories {
        // ...
        google() // Google's Maven repository
    }
}

2. Tingkat aplikasi build.gradle

Perbarui di bawah ketergantungan jika Anda menggunakan salah satu. Perhatikan bahwa firebase memiliki versi individual untuk setiap dependensi sekarang.

Gunakan Pustaka Firebase terbaru . Pada saat jawaban versi terbaru ada di bawah.

Firebase Core                com.google.firebase:firebase-core:16.0.3
Ads                          com.google.firebase:firebase-ads:15.0.1
Analytics                    com.google.firebase:firebase-analytics:16.0.3
App Indexing                 com.google.firebase:firebase-appindexing:16.0.1
Authentication               com.google.firebase:firebase-auth:16.0.3
Cloud Firestore              com.google.firebase:firebase-firestore:17.1.0
Cloud Functions              com.google.firebase:firebase-functions:16.1.0
Cloud Messaging              com.google.firebase:firebase-messaging:17.3.2
Cloud Storage   c            om.google.firebase:firebase-storage:16.0.2
Crash Reporting              com.google.firebase:firebase-crash:16.2.0
Crashlytics                  com.crashlytics.sdk.android:crashlytics:2.9.5
Dynamic Links                com.google.firebase:firebase-dynamic-links:16.1.1
Invites                      com.google.firebase:firebase-invites:16.0.3
In-App Messaging             com.google.firebase:firebase-inappmessaging:17.0.1
In-App Messaging Display     com.google.firebase:firebase-inappmessaging-display:17.0.1
ML Kit: Model Interpreter    com.google.firebase:firebase-ml-model-interpreter:16.2.0
ML Kit: Vision               com.google.firebase:firebase-ml-vision:17.0.0
ML Kit: Image Labeling       com.google.firebase:firebase-ml-vision-image-label-model:15.0.0
Performance Monitoring       com.google.firebase:firebase-perf:16.1.0
Realtime Database            com.google.firebase:firebase-database:16.0.2
Remote Config                com.google.firebase:firebase-config:16.0.0

3. Jangan lupa plugin google

Juga jangan lupa untuk menambahkan apply plugin: 'com.google.gms.google-services'di bagian bawah level aplikasi build.gradle.

Sinkronkan dan Bangun ...

Khemraj
sumber
1
Kiat bagus tentang memeriksa versi terbaru. Saya lebih suka menggunakan bintray.com/android/android-tools/… untuk memeriksa versi terbaru google-services. Halaman mvn sangat membingungkan dengan nya Centraldan Springs Pluginsbagian.
Sébastien
5

Hapus ketergantungan yang berisi "com.google.android.gms" dan kemudian coba untuk membangun kembali proyek ... Anda harus menekan dan mencoba karena ada beberapa ketergantungan yang menggunakan dua kali di sana

Misalnya com.android.support:designditambahkan twise

Arul Harsh
sumber
4

Ini terjadi pada saya setelah menambahkan firebase analitycs vesion terakhir, seperti ini

implementation "com.google.firebase:firebase-core:16.0.5"

mengubah versi ke 16.0.4 membantu

implementation "com.google.firebase:firebase-core:16.0.4"
snersesyan
sumber
2

Bagi saya masalahnya sepertinya disebabkan oleh alat pembuat android

Untuk memperbaikinya, saya harus menurunkan versi ini di build.gradlefile tingkat atas proyek mu

-        classpath 'com.android.tools.build:gradle:3.1.0'
+        classpath 'com.android.tools.build:gradle:3.0.1'

Saya sadar ini bukan solusi terbaik, tetapi sejauh ini satu-satunya yang berhasil untuk saya.

EDIT: Atau, tambahkan android.enableD8=falseke gradle.propertiesfile proyek Anda

RWIL
sumber
2

Mengomentari ketergantungan berikut memperbaiki masalah untuk saya:

implementation 'com.google.android.gms:play-services-analytics::16.0.7'
Patrick Goley
sumber
2
allprojects {
    repositories {
    //start here
    configurations.all {
 resolutionStrategy.eachDependency { DependencyResolveDetails details ->
   def requested = details.requested
       if (requested.group == 'com.google.android.gms') {
          details.useVersion '12.0.1'
       }
       if (requested.group == 'com.google.firebase') {
          details.useVersion '12.0.1'
         }
       }
     }
    //end
     jcenter()
       maven {
         url "https://maven.google.com"
       }
     }
 }
lakshman bodduluru
sumber
1

Oke, tunggu sebentar. Saya telah memverifikasi bahwa tidak semua pustaka Firebase membutuhkan versi itu. Versi sekarang tidak selaras. Bahkan di halaman resmi melaporkan bahwa beberapa di 15.1.0 bukannya 15.0.2;

Mungkin langsung simak di sini kalau bisa bermanfaat:

https://firebase.google.com/docs/android/setup

AlexPad
sumber
0

Jika Anda menghadapi masalah lain yang memblokir kompilasi, coba tingkatkan ketergantungan Layanan Google ke 3.2.0 . Bagi saya, setidaknya 3.2.1 dan 3.3.0 menyebabkan masalah dan 3.2.0 adalah yang berfungsi.

najm
sumber
tetapi saya pikir 3.2.1 diperlukan untuk membangun crashlytics?
j2emanue
@ j2emanue Saya pribadi tidak menggunakan Crashlytics jadi saya tidak dapat mengonfirmasi tetapi 3.2.1 dan 3.3.0 mencegah kompilasi dependensi lain.
najm