Gradle error: "Attribute "rippleColor" has already been defined" in android studio

Gradle error: "Attribute "rippleColor" has already been defined" in android studio

所以我尝试了 material 设计支持库,当我添加依赖项、编译时,我得到了这个错误。 我查看了类似的问题并尝试了他们的解决方案,但没有得到解决,所以我希望你能帮助我。

这是我的 logcat:

C:\Users\Jan\AndroidStudioProjects\SwagCalculator3\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7.2.0\res\values\values.xml
Error:(1) Attribute "rippleColor" has already been defined

这是我的 build.gradle:

apply plugin: 'com.android.application'

android {
compileSdkVersion 22
buildToolsVersion "22.0.1"

defaultConfig {
    applicationId "com.raptor.swagcalculator.swagcalculator"
    minSdkVersion 21
    targetSdkVersion 22

}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:design:22.2.0'
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:support-v4:22.2.0'
compile 'com.android.support:cardview-v7:22.2.0'
}

似乎在您使用的项目(您自己的应用程序 + 使用的库)中,名为 rippleColor 的属性至少使用了两次。

我建议检查包含颜色或任何属性的 xml-s(例如 colors.xml,或任何其他,尝试搜索它在您 IDE 的整个项目中)。

检查提到的rippleColor是否被多次使用。如果您的项目中有它,请重命名它!

我有同样的问题,经过长时间的搜索我发现有一些库使用相同的属性rippleColor

Example:

1- Google 播放服务

compile 'com.google.android.gms:play-services:7.8.0'

2- 设计支持库

compile 'com.android.support:design:22.2.0'

3-材料设计

compile 'com.github.navasmdc:MaterialDesign:1.5@aar'

Fix this issue

首先解决这个问题请将google播放服务包(整个包)替换为您需要的特定包查看 google site 中的 Google 钱包,那里的属性名为 rippleColor ,在我的例子中,我只需要 google 映射 com.google.android.gms:play-services-maps:7.8.0

其次如果你只需要使用导航抽屉

,你可以用compile 'it.neokree:MaterialNavigationDrawer:1.3.2'替换设计支持库compile com.github.navasmdc:MaterialDesign:1.5@aar

希望对您有所帮助

我在这里找到了解决方案 (https://github.com/navasmdc/MaterialDesignLibrary/issues/289 ). The MaterialDesign Library's rippleColor attritube is replaced with mRippleColor attribute and the compiled library is forked here (https://github.com/vajro/MaterialDesignLibrary)。

添加

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

}

并替换

compile 'com.github.navasmdc:MaterialDesign:1.5@aar'

compile 'com.github.vajro:MaterialDesignLibrary:1.6'

在您的 build.gradle 文件中应该可以解决问题。

我在使用Material Design时也遇到了这个问题,这是因为"rippleColor"与android支持设计包冲突。 如果您下载了该模块并将其添加为依赖项,则可以按如下方式解决此问题:

  1. 按 shift-cmd-R 替换路径,
  2. 要查找的文本:rippleColor
  3. 替换为:mrippleColor
  4. 勾选"Whole words only(may be faster)"
  5. 按"find"按钮替换

然后点击Build-Rebuild重新构建工程,就可以构建成功了。

或者您可以只使用这个分叉库:link,他为您完成了替换工作。

我遇到了同样的问题,因为我在定义了 rippleColor 属性的 android 应用程序中使用了 MaterialDesign Library。这是显示我如何解决此问题的示例。