9

每当我尝试在 Android Studio 3.1.2 中运行程序时,都会出现此错误。

程序类型已经存在:com.google.android.gms.common.util.VisibleForTesting Message{kind=ERROR, text=程序类型已经存在:com.google.android.gms.common.util.VisibleForTesting,sources=[未知来源文件],工具名称=Optional.of(D8)}

我的 gradle 模块应用程序:

buildscript {
repositories {
    google()
    jcenter()

    maven {
        url "https://maven.google.com" // Google's Maven repository
    }
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    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 {
    google()
    jcenter()

    maven {
        url "https://maven.google.com"
    }
    maven {
        url "https://maven.fabric.io/public"
    }
}

}

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

}

这是我的 Gradle 模块应用程序

apply plugin: 'com.android.application'

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

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation'com.android.support:design: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'enter code here



// FirebaseUI for Firebase Auth
implementation 'com.firebaseui:firebase-ui-auth:3.3.1'
implementation 'com.google.firebase:firebase-auth:15.0.0'
//Firebase RealTime Database
implementation 'com.google.firebase:firebase-database:15.0.0'
// FirebaseUI for Cloud Storage
implementation 'com.firebaseui:firebase-ui-storage:3.3.1'
implementation 'com.google.firebase:firebase-storage:15.0.0'

//circleimageView
implementation 'de.hdodenhof:circleimageview:2.1.0'

//Libreria utilizada para medir dimension de layout de chat cuando cambia de tamaño
implementation 'net.the4thdimension:android-utils:2.0.4'

//To scale every screen sizes , sp
implementation 'com.intuit.sdp:sdp-android:1.0.5'

//authenticacion para formato de numero de telefono
implementation 'com.googlecode.libphonenumber:libphonenumber:8.4.2'
implementation 'com.weiwangcn.betterspinner:library-material:1.1.0'
implementation 'com.amitshekhar.android:android-networking:1.0.0'

//Volley
implementation 'com.android.volley:volley:1.0.+'
implementation 'org.apache.commons:commons-lang3:3.6'

}

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

6 回答 6

7

如果将 google play gradle 插件版本更新到最新版本后问题仍然存在,请使用 Android Studio 文件搜索在整个项目中搜索给定文件,查找具有相同包名的搜索。问题是具有相同包和文件名的文件存在于两个不同的 jar 中(在我的情况下,一个 jar 是旧的谷歌分析服务 jar,它已被手动下载并添加为项目中的库)。请检查图像是否清晰。我们必须解决这个冲突(我已经删除了我的旧 jar,因为它不再需要)并且项目将构建。

于 2018-06-12T15:59:16.863 回答
2

Firebase Android SDK现在有独立的版本号,允许更频繁、更灵活的更新。

将 google play gradle 插件版本更新到最新版本,目前为 3.3.0。

classpath 'com.google.gms:google-services:3.3.0'
于 2018-05-04T05:14:55.440 回答
2

我做了这里向我建议的改变,但问题仍在发生!

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

 dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
implementation 'com.google.firebase:firebase-messaging:15.0.2'
implementation 'com.google.firebase:firebase-invites:15.0.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'
 compile 'com.google.firebase:firebase-core:15.0.2'
// FirebaseUI for Firebase Auth

implementation 'com.google.firebase:firebase-auth:15.1.0'
//Firebase RealTime Database
implementation 'com.google.firebase:firebase-database:15.0.1'
// FirebaseUI for Cloud Storage

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

implementation 'com.google.android.gms:play-services-gcm:15.0.0'

//circleimageView
implementation 'de.hdodenhof:circleimageview:2.1.0'

//Libreria utilizada para medir dimension de layout de chat cuando cambia de tamaño
implementation 'net.the4thdimension:android-utils:2.0.4'

//To scale every screen sizes , sp
implementation 'com.intuit.sdp:sdp-android:1.0.5'

//authenticacion para formato de numero de telefono
implementation 'com.googlecode.libphonenumber:libphonenumber:8.4.2'
implementation 'com.weiwangcn.betterspinner:library-material:1.1.0'
implementation 'com.amitshekhar.android:android-networking:1.0.0'

//Volley
implementation 'com.android.volley:volley:1.0.+'
implementation 'org.apache.commons:commons-lang3:3.6'

} 应用插件:'com.google.gms.google-services'

于 2018-05-04T18:16:07.390 回答
1

请更改以下代码行:

implementation 'com.google.firebase:firebase-auth:15.0.0'
implementation 'com.google.firebase:firebase-storage:15.0.0'

implementation 'com.google.firebase:firebase-auth:15.1.0'
implementation 'com.google.firebase:firebase-storage:15.0.2'

更多信息在这里

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

classpath 'com.google.gms:google-services:3.3.0'
于 2018-05-04T13:31:27.353 回答
0

如果您没有使用任何 jar
实现 fileTree(dir: 'libs', include: ['*.jar'])

于 2018-12-17T05:49:46.207 回答
-1

VisibleForTesting.java 是导致问题的Support Annotations 库中的一个类,如果您导入了该库的多个版本,您将面临您提到的 D8 抱怨,如果您的项目有多个模块,请尝试使用api,实现而不是在你的gradle.builds中编译,并尝试只使用提到的库的一个版本,这对我有用!

于 2018-05-07T10:56:45.663 回答