Importa Android Volley su Android Studio


88

Voglio usare la libreria di volley di Google

Utilizzo Android Studio e so come aggiungere librerie .jar.

Ma non sono riuscito a creare una libreria .jar con i file volley:

https://android.googlesource.com/platform/frameworks/volley

Ecco cosa ho fatto: (utilizzando Windows Seven)

git clone https://android.googlesource.com/platform/frameworks/volley
cd volley
android.bat update project -p . --target android-19
ant.jar jar

E ottengo l'output:

Si è verificata un'eccezione Java.

che c'è? come posso aggiungere una libreria non .jar?


Se vuoi usare Volley come modulo di dipendenza piuttosto che file jar, puoi seguire il link
cmoaciopm


Risposte:


179

Volley è ora ufficialmente disponibile su JCenter :

Aggiungi questa riga alle dipendenze gradle per il modulo dell'app del tuo progetto Android:

implementation 'com.android.volley:volley:1.1.1'


2
@Shavik Gradle non è sincronizzato durante l'aggiunta di questo al file build.gradle, ricevo un errore del tipo: Impossibile risolvere: com.android.volley: volley: 1.0.0
Sundeep Badhotiya

4
Ho avuto un problema simile come @SundeepBadhotiya È stato risolto inserendo la dichiarazione di compilazione menzionata nel build.gradle del modulo, non nel file gradle del progetto.
DBX12

Devo usare com.android.volley:volley:1.0.0o com.mcxiaoke.volley:library-aar:1.0.0?
pb772

1
Ho provato questo ma ancora non si sincronizza, c'è qualcosa che mi manca?
Clive Makamara

1
l'ultima versione è 1.1.0 e in Android Studio 3 dovresti usare: implementation 'com.android.volley: volley: 1.1.0'
Meisam

53

Quindi Volley è stato aggiornato allo stile di build di Android Studio che rende più difficile creare un barattolo. Ma il modo consigliato per eclipse era usarlo come progetto di libreria e questo vale anche per Android Studio, ma quando si lavora in Android Studio lo chiamiamo modulo. Quindi ecco una guida su come farlo nel modo in cui Google vuole che lo facciamo. La guida si basa su questo simpatico tutorial .

  1. Per prima cosa scarica l'ultima scarica con git (git clone https://android.googlesource.com/platform/frameworks/volley ).

  2. Nel progetto corrente (Android Studio) fare clic su [File]-> [New]-> [Import Module].

  3. Ora seleziona la directory in cui hai scaricato Volley.

  4. Ora Android Studio potrebbe guidarti a fare il resto, ma continua la guida per verificare che tutto funzioni correttamente

  5. Apri settings.gradle (trova in root) e aggiungi (o verifica che sia incluso):

    include ':app', ':volley'

  6. Ora vai al tuo build.gradle nel tuo progetto e aggiungi la dipendenza:

    compile project(":volley")

Questo è tutto quello che c'è da fare, molto più semplice e facile che compilare un jar e più sicuro che fare affidamento su jar di terze parti o caricamenti di esperti.


1
Questo è ciò che ha risolto il mio problema. Tuttavia l'ho complicato spostando il sottomodulo in una directory che ho creato chiamata "3rd_party". Ho dovuto modificare le dichiarazioni di cui sopra in include ':app', ':3rd_party:volley', e compile project(":3rd_party:volley"). (L'utilizzo dei due punti per delineare le cartelle mi ha fatto inciampare all'inizio, pensando prima che potesse denotare solo un percorso relativo)
ahall

Il passaggio 2 dovrebbe essere File> Nuovo> Importa modulo.
The_Martian

@The_Martian grazie, l'ho aggiornato per riflettere gli aggiornamenti di Android Studio.
Warpzit

19

Aggiornamento della risposta di Warpzit per Android Studio 1.3.2 (differenze in grassetto )
(aggiornamento: sembra essere lo stesso per Android 2.0)

  1. Per prima cosa ottieni l'ultimo tiro al volo con git.
  2. Nel tuo progetto corrente (android studio) fai clic su [ file] -> [Nuovo] -> [Nuovo modulo].
  3. Ora seleziona [Importa progetto Gradle ], fai clic su Avanti
  4. Ora seleziona la directory in cui hai scaricato Volley.
  5. Ora Android Studio potrebbe guidarti a fare il resto, ma continua la guida per verificare che tutto funzioni correttamente
  6. Apri settings.gradle (trova in root) e aggiungi (o verifica che sia incluso):

    include ': app', ': volley'

  7. Ora vai al tuo build.gradle nel tuo progetto e aggiungi la dipendenza:

    compila progetto (": volley")


Questo sembra importare il modulo nell'app e non in root, il che infastidisce tutto. Qualche idea sul perché sarebbe?
Cruncher

DEPRECATO. Questa risposta non è più valida. Anche se tecnicamente "funzionerebbe", non dovresti davvero farlo in questo modo nel 2018+ Usa compile 'com.android.volley: volley: <current version here> .0.0'
StarWind0

18

Ragazzi troppo complicati. Includilo semplicemente nelle tue dipendenze gradle:

dependencies {
    ...
    compile 'com.mcxiaoke.volley:library:1.0.17'
}

17
Vale la pena sottolineare che questo non è un repository ufficiale. In quanto tale, c'è sempre la possibilità che il codice dannoso possa essere incluso in questo. Probabilmente non succederà, giusto? Ma è meglio essere consapevoli che potrebbe.
Craig Russell

Per i principianti con gradle, ecco alcuni dettagli in più: blog.chrisblunt.com/android-getting-started-with-volley
BurninLeo,

5
DEPRECATO Nota, questo progetto è deprecato e non viene più mantenuto, usa la versione ufficiale di jCenter. compila 'com.android.volley: volley: 1.0.0'
StarWind0

10

La maggior parte di queste risposte non sono aggiornate.

Google ora ha un modo semplice per importarlo .. Continueremo a vedere molte informazioni obsolete poiché non hanno creato questa soluzione per 2-3 anni.

https://bintray.com/android/android-utils/com.android.volley.volley/view

Tutto quello che devi fare è aggiungere al tuo Build.Gradle quanto segue:

compile 'com.android.volley:volley:1.0.0'

IE

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "24.0.0"
    defaultConfig {
        applicationId "com.example.foobar.ebay"
        minSdkVersion 23
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.1.0'
    compile 'com.android.volley:volley:1.0.0'
    testCompile 'junit:junit:4.12'
}

3

Aggiungi questa riga alle dipendenze in build.gradle:

compile 'com.mcxiaoke.volley:library:1.0.+'

3

Dopo aver compile 'com.android.volley:volley:1.0.0'inserito il file build.gradle (Module) sotto le dipendenze, non funzionerà immediatamente, dovrai prima riavviare Android Studio!


Stavo affrontando questo problema e un riavvio ha funzionato per me. Tuttavia, ci deve essere un modo migliore!
Nikhil Gupta

Tutto quello che devi fare è aggiornare le tue dipendenze. Il riavvio probabilmente lo ha avviato per te. C'è un banner nella parte superiore dello schermo che ti chiede di aggiornare. Difficile da perdere. Basta premere quello la prossima volta.
StarWind0

Incredibilmente, il riavvio di Android Studio ha risolto il nostro pomeriggio di tentativi di risolvere questo problema :(
Luke

2

Aggiungi questa dipendenza nel tuo file gradle.build (Module: app)

compile 'com.android.volley:volley:1.0.0'

E poi sincronizza il tuo file gradle.


1

In "build.gradle" per la tua app (l'app, non il progetto), aggiungi questo:

dependencies {
    ...
    implementation 'com.android.volley:volley:1.1.0'
}

1

Aggiungilo nel tuo "build.gradle" della tua app.

implementazione 'com.android.volley: volley: 1.1.1'


0

Per aggiungere volley come sottomodulo e ottenere aggiornamenti regolari dal repository GIT, è possibile seguire i seguenti passaggi. Il vantaggio principale è che Volley può essere personalizzato e il codice sorgente può essere estratto dal repository GIT ogni volta che è necessario un aggiornamento.

Aiuta anche a scopo di debug.

Segui i passaggi seguenti:

Fase I:

Aggiungi volley come sottomodulo nel progetto di applicazioni Android GIT Repo. git sottomodulo aggiungi -b master https://android.googlesource.com/platform/frameworks/volley Libraries / Volley

Fase II:

In settings.gradle, aggiungi quanto segue per aggiungere volley come modulo di progetto in studio. include il progetto ': Volley' (': Volley'). projectDir = new File ('../ Libraries / Volley')

Fase III:

In app / build.gradle, aggiungi la seguente riga per compilare il progetto di compilazione Volley (': Volley')

Sarebbe tutto! Volley è stato aggiunto con successo al progetto.

Ogni volta che desideri ottenere il codice più recente dal repository ufficiale di Volley di Google, esegui il comando seguente

git submodule foreach git pull

Per informazioni più dettagliate: https://gitsubmoduleasandroidtudiomodule.blogspot.in/

Codice di esempio Repo GIT: https://github.com/arpitratan/AndroidGitSubmoduleAsModule


0

La riga "compile project (': volley')" mi dava questo errore:

Errore: esecuzione non riuscita per l'attività ": volley: processDebugResources". > com.android.ide.common.process.ProcessException: impossibile eseguire aapt

È stato causato perché le versioni compileSdk e buildTools di module volley erano attualmente su "22" e "22.0.1" e il mio progetto stava lavorando con quelle più recenti ("24" e "24.0.1").

SOLUZIONE:

Apri il tuo file build.gradle (Module: volley) e cambia la versione di "compileSdk" e "buildTools", ad esempio ho cambiato questo:

android {
    compileSdkVersion 22
    buildToolsVersion = '22.0.1'
}

per questo:

android {
    compileSdkVersion 24
    buildToolsVersion = '24.0.1'
}

Non dovresti più avere questo errore, spero che aiuti :)


0

Oppure puoi semplicemente farlo

ant jar

nel tuo progetto git volley clonato. Ora dovresti vedere volley.jarnella bincartella dei progetti di volley . Copia questo nella app\libscartella di Android Studio . Quindi aggiungi quanto segue nella dependenciessezione del build.gradlefile a livello di modulo -

compile files('libs/volley.jar')

E dovresti essere bravo a importare e utilizzare le classi della libreria nel tuo progetto,


0

è disponibile anche nel repository mavenCentral()...

dependencies {
    // https://mvnrepository.com/artifact/com.android.volley/volley
    api "com.android.volley:volley:1.1.0'
}

0

due cose

uno: la compilazione è obsoleta piuttosto è meglio usare l'implementazione,

e due: volley 1.0.0 non è aggiornato e la sincronizzazione del progetto non funzionerà

in alternativa in build.gradle aggiungere l'implementazione 'com.android.volley: volley: 1.1.1' o l'implementazione 'com.android.volley: volley: 1.1. +' per 1.1.0 e versioni successive.


-1

aggiungi volly alla tua app studio gradle compilando "com.android.volley: volley: 1.0.0"


-1

fase 1: - Scarica il file volley.jar.

passaggio 2: - Vai al tuo progetto e imposta il menu di visualizzazione da Android a Project, quindi vai a

app -> libs-> paste your volley.jar file qui

fase 3: - Fare clic con il tasto destro sul file volley.jar e fare clic su "aggiungi come libreria". ed è tutto fatto.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.