web-dev-qa-db-fra.com

Utilisation de la bibliothèque ViewPagerIndicator avec Android Studio et Gradle

J'essaie d'utiliser la bibliothèque ViewPagerIndicator de Jake Wharton , mais je ne parviens pas à la faire fonctionner avec mon projet Gradle dans Android Studio. 

Je l'ajoute comme une dépendance comme ceci: 

    dependencies {
       // ... other ommitted
       compile 'com.viewpagerindicator:library:2.4.1'
       compile 'com.Android.support:support-v4:19.0.1'
       compile 'com.nineoldandroids:library:2.4.0'
       // ...
    }

mais le projet ne semble pas reconnaître les composants de la bibliothèque. Je me demande s'il y a un problème de dépendance avec différentes versions de support-v4 ou quelque chose de ce genre dans nineoldandroids ...?

113
loeschg

Je viens de pousser une version à l'intérieur de maven central, vous n'avez donc qu'à ajouter cette dépendance:

compile 'fr.avianey.com.viewpagerindicator:library:2.4.1.1@aar'

Et déclarez maven central comme ceci:

repositories {
    mavenCentral()
}

J'espère que ça aide...

195
avianey

Un peu tard pour la fête, mais ici:

Jake Wharton ne l'a pas publié dans Maven comme un aar. Il y a un groupe qui en a mis un sur son serveur, vous pouvez le configurer comme ceci dans votre build.gradle:

Ajoutez ceci à vos référentiels sources après avoir déclaré vos plugins:

repositories {
    maven { url "http://dl.bintray.com/populov/maven" }
    mavenCentral()
}

Cela va alimenter leur repo maven, qui contient un fichier d’arrière qu’ils ont assemblé. Une fois cela fait, vous pouvez simplement ajouter cette ligne à vos dépendances et tout devrait fonctionner une fois que vous avez synchronisé votre projet avec vos fichiers de niveaux.

Assurez-vous que le repo Maven est répertorié au-dessus de l'entrée mavenCentral(). Sinon, il va d'abord chercher dans le référentiel central de maven et trouver le mauvais paquet.

Android Studio génère deux fichiers build.gradle pour les projets, assurez-vous de le placer dans le bon!

dependencies {
    // ...
    compile 'com.viewpagerindicator:library:2.4.1@aar'
    // ...
}

Nous l'utilisons dans notre application si vous souhaitez voir un exemple de travail:

https://github.com/pandanomic/SUREwalk_Android/blob/master/surewalk/build.gradle

147
Zac Sweers

J'utilise gradle 0.10. + Avec Android Studio 0.8.2 et la réponse acceptée ne fonctionne pas pour moi. Voici les légères modifications que je devais faire pour que ABS soit opérationnel dans mon projet:

Dans le fichier build.gradle de niveau supérieur de votre projet, ajoutez le référentiel maven dans la configuration allprojects comme ceci:

allprojects {
   repositories {
      maven { url "http://dl.bintray.com/populov/maven" }
      mavenCentral()
   }
}

Et dans le fichier build.gradle du module, ajoutez la dépendance sans le @aar:

dependencies {
   // ...
   compile 'com.viewpagerindicator:library:2.4.1'
   // ...
}
56
mugiwarapy

Jitpack.io is great pour cette situation.

Premièrement, ajoutez le référentiel suivant:

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

Ensuite, ajoutez simplement la dépendance pointant vers le dépôt GitHub:

dependencies {
    compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1@aar'
}
47
Juan Andrés Diana

Ajoutez ceci à vos dépendances dans le fichier build.gradle de votre module d'application, de la manière suivante:

dependencies {
   compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
   ...
}
25
Md Yusuf Alam

J'ai fait le tour en suivant ceci. Pas besoin d'importer de bibliothèque ou rien. Juste deux étapes et bingo, cela fonctionne parfaitement.

Dans build.gradle (Projet: ...):

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

Dans build.gradle (module: app):

dependencies {
            compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
    }
6
Parsania Hardik

Je n'ai pas réussi à importer le projet avec aucune des réponses. J'utilise Android Studio 0.8.6 et la version 1.12. 

La seule solution que j'ai trouvée a été de télécharger la bibliothèque .aar à partir de: 

http://dl.bintray.com/populov/maven/com/viewpagerindicator/library/2.4.1/

puis importez la bibliothèque en dégradé comme ceci:

 repositories {
      flatDir {
        dirs 'libs'}
   }

 dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.Android.support:appcompat-v7:20.0.0'
    compile(name:'library-2.4.1', ext:'aar') 
  }

J'espère que cela t'aides!

5
vrunoa

J'utilise Studio 0.8.6 et Gradle 1.12

Une différence dans mon projet aurait pu être que j'utilise également les bibliothèques de compatibilité, ce qui a amené Gradle à se plaindre d'avoir la support-v4 lib deux fois. 

Je devais donc exclure le support-v4 déjà inclus comme ceci: 

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.Android.support:support-v4:19.0.1'
    compile 'com.Android.support:appcompat-v7:19.0.1'    
    compile ('com.viewpagerindicator:library:2.4.1') {
        exclude module: 'support-v4'
    }
}

Ensuite, il s'est également plaint d'avoir le fichier AndroidManifest.xml à deux reprises.

J'ai donc aussi ajouté exclude 'AndroidManifest.xml' dans la section Android comme ceci: 

Android {
    packagingOptions {
        exclude 'AndroidManifest.xml'
    }

Ensuite cela a fonctionné.

4
Jens

veuillez vous assurer que support: support-v4 est identique dans toutes les applications libs et yours, parfois, il pose problème, utilisez donc le même support: support-v4 dans toutes les bibliothèques et votre projet d'application.

3
Jitesh Upadhyay

Le message marqué comme réponse n'a pas fonctionné pour moi ... Gradle s'est plaint de "Connexion refusée".

Considérant qu'il semble stable après tout ce temps, je télécharge simplement le fichier aar à partir de https://bintray.com/populov/maven/com.viewpagerindicator:library , copié dans mon dossier libs et le référencé. ainsi:

dependencies {
...
compile 'com.viewpagerindicator:library:2.4.1@aar'
}
3
devguy
Add it in your build.gradle at the end of repositories:
Ste 1
 repositories {
        // ...
        maven { url "https://jitpack.io" }
    }
Step 2. Add the dependency in the form

    dependencies {
            compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1@aar'
    }
2
Sam

C'est ce qui a fonctionné pour moi:

repositories {
   jcenter()
// maven { url "http://dl.bintray.com/populov/maven" }
   mavenCentral()
}

c'est-à-dire, n'utilisez pas l'URL du dépôt.

puis utilisez:

dependencie {
    ....
    compile 'com.mcxiaoke.viewpagerindicator:library:2.4.1@aar'
    ....
}
2
nyxee

Par souci de variété, voici une réponse qui n’utilise pas maven:

  1. Téléchargez le fichier Zip/tgz depuis ViewPagerIndicator

  2. Dans la fenêtre du projet, sélectionnez la navigation du projet.

  3. Aller au projet> Nouveau> Module.

  4. Import Gradle Project

  5. Recherchez et sélectionnez le dossier de bibliothèque décompressé. Nommez le module comme bon vous semble. Je l'ai nommé viewPagerIndicator

  6. Continuez à cliquer sur Suivant jusqu'à la dernière fenêtre dans laquelle vous pouvez cliquer sur Finish. Si vous recevez le message Android Support Library is not installed, ne vous inquiétez pas. Allez-y, cliquez sur Finish.

  7. Attendez la fin de la compilation et de la compilation du projet. Une fois terminé, ajoutez ceci aux dépendances {..} dans build.gradle (Module:app):

     compile project(':viewPagerIndicator')
    

La bibliothèque est maintenant disponible pour votre usage.

2
Flame of udun

Essayez également de mettre le référentiel Maven avant les autres.

 buildscript {
    repositories {
        maven { url "http://dl.bintray.com/populov/maven" }
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:1.3.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        maven { url "http://dl.bintray.com/populov/maven" }
        mavenCentral()
        jcenter()
    }
}

Et construisez avec des dépendances:

  apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId ""
        minSdkVersion 10
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.Android.support:appcompat-v7:23.0.1'
    compile 'com.viewpagerindicator:library:2.4.1'
}
2
ODAXY

Il y a un problème de nouveau grade ..__ Il suffit de changer la dépendance comme ci-dessous.

implementation 'com.inkapplications.viewpageindicator:library:2.4.3'
0
Rajan Kashiyani

Vous pouvez simplement inclure la bibliothèque ViewPagerIndicator directement dans votre application, comme décrit ici

Il vous permet d'importer la bibliothèque ViewPagerIndicator en tant que «projet existant» dans votre projet actuel.

0
Babatunde Adeyemi

Veuillez vérifier ceci en premier

Android Studio - EXCEPTION INATTENDUE DE HAUT NIVEAU:

si ces vérifications sont acceptables, veuillez le mentionner ci-dessous.

Il n'est pas nécessaire d'inclure support-v4 en tant que dépendance de votre module car la bibliothèque ViewPagerIndicator ayant déjà support-v4 en tant que dépendance. Vous pouvez donc essayer de supprimer cela et faire la synchronisation avec gradle en utilisant un joli petit bouton gradle disponible dans la barre d’outils -

enter image description here

Mettez à jour votre question si vous rencontrez des erreurs de synchronisation.

MIS À JOUR :

Je ne suis pas sûr, mais c'est peut-être un problème. Je n'ai trouvé aucune bibliothèque ViewPagerIndicator basée sur gradle. JackWarton a déplacé actionbarsherlock dans Gradle mais ViewPagerIndicator utilise toujours maven. 

0
pyus13

Pour résumer: vous pouvez rechercher "ViewPagerIndicator" dans http://mvnrepository.com/ , vous découvrirez que l'original de com.viewpagerindicator ne comporte pas le marqueur rouge "Packages Android", vous ne pouvez donc pas l'utiliser avec Gradle. Vous pouvez en trouver un autre avec le marqueur rouge, assurez-vous qu'il a la même version que celle d'origine. (c'est-à-dire que quelqu'un crée un package Android basé sur celui d'origine)

0
cn123h