web-dev-qa-db-fra.com

Ajouter la bibliothèque github en tant que dépendance au projet Android-Studio

J'essaie d'implémenter ActionBar-PullToRefresh à partir de https://github.com/chrisbanes/ActionBar-PullToRefresh/wiki/QuickStart-ABC . Je viens de passer d’Eclipse à Android-Studio et je suis donc totalement novice chez AS et Gradle.

chrisbanes écrit sur le site:

Le moyen le plus simple d’ajouter ActionBar-PullToRefresh à votre projet consiste à utiliser Gradle. Il vous suffit d’ajouter la dépendance suivante à votre build.gradle:

dependencies {  
    mavenCentral()
    compile 'com.github.chrisbanes.actionbarpulltorefresh:extra-abc:+'
}

Est-ce que cela signifie que je n'ai pas besoin de télécharger la bibliothèque et que Gradle s'en charge pour que je dispose toujours de la dernière version? Je ne sais tout simplement pas où mettre la ligne ci-dessus. J'ai deux fichiers Gradle.build un dans ma racine qui ressemble à:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:0.8.+'
    }
}

et celui de mon projet qui ressemble à:

apply plugin: 'Android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.Android.support:support-v4:18.0.+'
    compile 'com.Android.support:appcompat-v7:18.0.+'
}

Android {
    compileSdkVersion 19
    buildToolsVersion "19.0.1"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            Java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/Java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/Java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

Dois-je ajouter un référentiel quelque part?

50
f4b

Cela fonctionnera lorsque vous ajouterez cette ligne à votre projet build.gradle, dans la section dependencies:

compile 'com.github.chrisbanes.actionbarpulltorefresh:extra-abc:+'

Ajoutez aussi:

repositories {
    mavenCentral()
}

Alors:

repositories {
    mavenCentral()
}

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile 'com.Android.support:support-v4:18.0.+'
    compile 'com.Android.support:appcompat-v7:18.0.+'
    compile 'com.github.chrisbanes.actionbarpulltorefresh:extra-abc:+'
}

Gradle téléchargera automatiquement les ressources nécessaires pour vous.

46
nhaarman

Utilisez https://jitpack.io/

allprojects {
    repositories { 
        jcenter()
        maven { url "https://jitpack.io" }
    }
}
dependencies {
    compile 'com.github.User:Repo:Tag'
}
25
deviant