将依赖项添加到gradle

时间:2015-10-08 10:43:46

标签: android gradle build resources android-appcompat

我已将library添加到我的gradle文件中。

所以我按照库和教程中的描述进行了操作 刚刚将依赖项添加到我的gradle文件中:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion '22.0.0'
    defaultConfig {
        applicationId "com.jublikon.timerapp"
        minSdkVersion 21
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main { res.srcDirs = ['src/main/res', 'src/main/res/drawable/ic_action_search.png'] }
    }
    productFlavors {
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')

    //Google Libraries
    compile 'com.android.support:appcompat-v7:22.0.+'
    compile 'com.android.support:recyclerview-v7:22.0.+'
    compile 'com.android.support:cardview-v7:22.0.+'

    //Third party libraries
    compile 'com.mcxiaoke.volley:library:1.0.6'
    compile 'com.nispok:snackbar:2.10.+'
    compile 'com.joanzapata.pdfview:android-pdfview:1.0.+@aar'
    compile 'jp.wasabeef:recyclerview-animators:1.2.0@aar'
    compile 'com.github.fengdai:alertdialogpro-theme-material:0.2.4'
}

所以我得到以下gradle问题:

  

检索项目的父项时出错:找不到与之匹配的资源   名称'android:TextAppearance.Material.Widget.Button.Inverse'

为什么添加第三方库时资源文件会出现问题?

问题链接到的文件(v23 / values-v23.xml):

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Base.TextAppearance.AppCompat.Widget.Button.Inverse" parent="android:TextAppearance.Material.Widget.Button.Inverse"/>
    <style name="Base.Theme.AppCompat" parent="Base.V23.Theme.AppCompat"/>
    <style name="Base.Theme.AppCompat.Light" parent="Base.V23.Theme.AppCompat.Light"/>
    <style name="Base.V23.Theme.AppCompat" parent="Base.V22.Theme.AppCompat">
        <!-- We can use the platform drawable on v23+ -->
        <item name="actionBarItemBackground">?android:attr/actionBarItemBackground</item>

        <item name="controlBackground">@drawable/abc_control_background_material</item>
    </style>
    <style name="Base.V23.Theme.AppCompat.Light" parent="Base.V22.Theme.AppCompat.Light">
        <!-- We can use the platform drawable on v23+ -->
        <item name="actionBarItemBackground">?android:attr/actionBarItemBackground</item>

        <item name="controlBackground">@drawable/abc_control_background_material</item>
    </style>
    <style name="Base.Widget.AppCompat.Button.Colored" parent="android:Widget.Material.Button.Colored"/>
</resources>

希望有人可以帮助我。类似的线程没有能够解决我的问题的答案

2 个答案:

答案 0 :(得分:2)

此库

compile 'com.github.fengdai:alertdialogpro-theme-material:0.2.4'

与appcompat v23有依赖关系 这里是pom file

 <dependencies>
    <dependency>
      <groupId>com.android.support</groupId>
      <artifactId>appcompat-v7</artifactId>
      <version>23.0.0</version>
      <scope>compile</scope>
    </dependency>
  </dependencies>

Appcompat v23需要API23才能编译 这是你问题的原因。

  

检索项目的父项时出错:找不到与给定名称匹配的资源&#39; android:TextAppearance.Material.Widget.Button.Inverse&#39;

您可以排除此依赖关系,但可能会遇到库问题。 我建议你在build.gradle

中将compileSdkVersion更改为23
 compileSdkVersion 23

答案 1 :(得分:0)

我遇到了gradle错误,我从以下链接中找到了解决方案。 它对我有用。

compile ('com.android.support:support-v4:23.2.1'){ force=true; }

Error inflating class android.support.design.widget.CollapsingToolbarLayout