Android Studio- Đã có loại chương trình: com.google.android.gms.internal.measurement.zzwp


89

Hôm qua, ứng dụng của tôi đã hoạt động tốt.

Hôm nay, tôi không biết tại sao, ứng dụng không biên dịch nữa sau khi tôi mở lại Android Studio.

Lỗi được hiển thị là

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)}

Tôi thực sự không biết chuyện gì đang xảy ra, tôi đã tìm kiếm mọi thứ và không có gì hiệu quả. Nếu ai đó có thể giúp tôi, tôi thực sự sẽ đánh giá cao. Tôi thay đổi tất cả các phụ thuộc và thư viện để cố gắng giải quyết nó, nhưng không có gì hiệu quả.

Đây là dự án 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
}

Và đây là Mô-đun build.gradle: ứng dụng của tôi

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'


2
Đây hẳn là lý do tại sao mọi người không thích tự động cập nhật các phần phụ thuộc ...
user253751

1
@immibis Không hiểu được bạn. Ý của bạn là firebase tự động cập nhật mặc dù chúng tôi đã đề cập đến các phiên bản cụ thể?
rpattabi

Câu trả lời:


95

Đã giải quyết vấn đề này sau khi cập nhật một firebase dependencieslên một ví dụ mới nhấtcom.google.firebase:firebase-core:15.0.0 để com.google.firebase:firebase-core:15.0.2 Nhận Danh sách Mới nhất từ ​​đây

Tất cả các thay đổi khác được thực hiện trong danh sách dưới đây

  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) Trong bản cập nhật tệp build.gradle cấp cao nhất từ classpath 'com.google.gms:google-services:3.1.1đếnclasspath 'com.google.gms:google-services:3.2.1


5
Giải pháp này hoạt động. Firebase hiện đang phân phối các gói của họ với số phiên bản độc lập, đảm bảo tất cả các gói trên build.gradle là gói mới nhất.
Trí Nguyễn

Nó đã làm việc. Cảm ơn bạn rất nhiều. Tôi đã cố gắng cập nhật mọi thứ, nhưng tôi chưa bao giờ tưởng tượng rằng firebase đã thay đổi điều đó. Cảm ơn bạn.
Caio Araújo

Thật tốt khi bạn đã chỉnh sửa và thêm phần thứ hai từ câu trả lời của tôi, vì câu trả lời của bạn được chấp nhận;)
Ragaisis

tôi cũng đang gặp một loại vấn đề khác "Loại chương trình đã có: org.apache.http.io.HttpMessageParser Thông báo {kind = ERROR, text = Loại chương trình đã có: org.apache.http.io.HttpMessageParser, sources = [Nguồn không xác định file], tool name = Optional.of (D8)}, "tôi đang sử dụng phiên bản firebase mới nhất và phiên bản hỗ trợ mới nhất, các thư viện thiết kế, cũng như build.gradle trong dự án của tôi chứa classpath 'com.android.tools.build:gradle:3.1 .2 'classpath' com.google.gms: google-services: 4.0.0 ', sự cố vẫn xảy ra ..
không thay đổi được.

1
Tôi đã nhìn thấy trong thời gian đó là giải pháp tốt nhất là để cập nhật những phụ thuộc vào phiên bản mới nhất xuất hiện trên trang web của họ, không phải là mới nhất xuất hiện trong các tập tin gradle
Razvan

21

Tôi cũng gặp lỗi này và giải pháp của tôi cho vấn đề này

1) Cập nhật phiên bản Firbase để độc lập với phiên bản dịch vụ của Google Play

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

Bạn có thể kiểm tra phiên bản mới nhất tại đây https://firebase.google.com/support/release-notes/android#latest_sdk_versions

2) Trong tệp build.gradle cấp cao nhất, hãy cập nhật google-services từ 3.1.1 lên 3. 2 .1

buildscript {
    dependencies {

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

    }
 }

12

Tôi chỉ thay đổi

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

đến

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

nó hoạt động.


7

Firebase là lý do khiến họ cập nhật số phiên bản như thể họ không quan tâm đến các nhà phát triển.

Những điều đầu tiên trước tiên. Cập nhật classpath trong gradle cấp dự án

dependencies {

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

    }

Tiếp theo, Bất kể các công cụ bạn có thể đang sử dụng như phân tích, liên kết động, v.v. Sử dụng phụ thuộc được phiên bản thích hợp.

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

Trong trường hợp của tôi, tôi đang sử dụng thử nghiệm A / B thông qua cấu hình từ xa, vì vậy tôi cần cập nhật nó từ

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

đến

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

Điều này sẽ hoạt động mà không có bất kỳ trục trặc nào. Ngoài ra, vui lòng đăng loại vấn đề này lên Firebase để họ không thực hiện loại thay đổi này mà không có thông báo hoặc không có tài liệu thích hợp.


2
"Firebase là lý do khiến họ cập nhật số phiên bản như thể họ không quan tâm đến các nhà phát triển." Độc đáo đã nói 👌
Lenin Raj Rajasekaran

6

Cập nhật phần phụ thuộc firebase của bạn.

1. Mức độ dự án build.gradle

Cập nhật google.gmsphiên bản mới nhất. Theo dõi bản phát hành mới nhất . Tại thời điểm trả lời muộn nhất là 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. Cấp ứng dụng build.gradle

Cập nhật phụ thuộc bên dưới nếu bạn sử dụng bất kỳ. Lưu ý rằng firebase hiện có các phiên bản riêng lẻ cho mọi phụ thuộc.

Sử dụng các Thư viện Firebase mới nhất . Tại thời điểm trả lời, phiên bản mới nhất ở bên dưới.

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. Đừng quên plugin google

Cũng đừng quên thêm apply plugin: 'com.google.gms.google-services'ở cuối cấp ứng dụng build.gradle.

Đồng bộ hóa và xây dựng ...


1
Mẹo hay về cách kiểm tra phiên bản mới nhất. Tôi thích sử dụng bintray.com/android/android-tools/… để kiểm tra phiên bản mới nhất của google-services. Trang mvn rất khó hiểu với các phần Centralvà của nó Springs Plugins.
Sébastien

5

Xóa phần phụ thuộc có chứa "com.google.android.gms" và sau đó cố gắng xây dựng lại dự án ... bạn phải làm như vậy thử xem có một phần phụ thuộc nào đó sử dụng hai lần ở đó

Ví dụ com.android.support:designđã thêm twise



4

Điều này đã xảy ra với tôi sau khi thêm phiên bản cuối cùng firebase analitycs, như thế này

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

đã giúp thay đổi phiên bản thành 16.0.4

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

2

Đối với tôi, vấn đề dường như do các công cụ xây dựng Android gây ra

Để khắc phục, tôi đã phải hạ cấp những thứ này trong build.gradletệp cấp cao nhất của dự án mu

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

Tôi biết đây không phải là giải pháp tốt nhất, nhưng cho đến nay là giải pháp duy nhất phù hợp với tôi.

CHỈNH SỬA: Ngoài ra, thêm android.enableD8=falsevào gradle.propertiestệp dự án của bạn


2

Nhận xét về phần phụ thuộc sau đã khắc phục sự cố cho tôi:

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

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"
       }
     }
 }

1

Ok, đợi một chút. Tôi đã xác minh rằng không phải tất cả các thư viện Firebase đều cần phiên bản đó. Các phiên bản bây giờ bị lệch. Trên thực tế, trên trang chính thức báo cáo rằng một số ở mức 15.1.0 thay vì 15.0.2;

Có thể xem trực tiếp tại đây nếu nó có thể hữu ích:

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



0

Nếu bạn gặp phải các sự cố khác chặn quá trình biên dịch, hãy thử nâng cấp phần phụ thuộc của Dịch vụ Google lên 3.2.0 . Đối với tôi, ít nhất, 3.2.1 và 3.3.0 đã gây ra sự cố và 3.2.0 đã hoạt động.


nhưng tôi nghĩ 3.2.1 là bắt buộc để xây dựng crashlytics?
j2emanue

@ j2emanue Cá nhân tôi không sử dụng Crashlytics nên tôi không thể xác nhận nhưng cả 3.2.1 và 3.3.0 đều ngăn các phần phụ thuộc khác biên dịch.
najm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.