Importar Android Volley para Android Studio

88

Eu quero usar a biblioteca de vôlei do Google

Estou usando o Android Studio e sei como adicionar bibliotecas .jar.

Mas não consegui criar uma biblioteca .jar com os arquivos de volley:

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

Aqui está o que eu fiz: (usando o windows sete)

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

E recebo o resultado:

Ocorreu uma exceção java.

o que está errado? como posso adicionar uma biblioteca não .jar?

nsvir
fonte
Se você quiser usar o volley como um módulo de dependência em vez de um arquivo jar, você pode seguir o link
cmoaciopm
Tutorial de importação de vôlei: gitsubmoduleasandroidtudiomodule.blogspot.in
Arpit Ratan

Respostas:

178

O Volley agora está oficialmente disponível no JCenter :

Adicione esta linha às dependências do Gradle para o módulo de app do seu projeto Android:

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

Shauvik
fonte
2
@Shavik Gradle não está sincronizado ao adicionar isso ao arquivo build.gradle, estou recebendo um erro como: Falha ao resolver: com.android.volley: volley: 1.0.0
Sundeep Badhotiya
4
Tive um problema semelhante como @SundeepBadhotiya. Foi resolvido colocando a instrução de compilação mencionada no build.gradle do Módulo, não no arquivo gradle do Projeto.
DBX12
Devo usar com.android.volley:volley:1.0.0ou com.mcxiaoke.volley:library-aar:1.0.0?
pb772
1
Tentei fazer isso, mas ainda não consigo sincronizar. Há algo que estou perdendo?
Clive Makamara de
1
a última versão é 1.1.0 e no Android Studio 3 você deve usar: implementação 'com.android.volley: volley: 1.1.0'
Meisam
53

Portanto, o Volley foi atualizado para o estilo de construção do Android Studio, o que torna mais difícil criar um jar. Mas a maneira recomendada para o eclipse era usá-lo como um projeto de biblioteca e isso vale para o Android Studio também, mas quando se trabalha no Android Studio, chamamos isso de módulo. Portanto, aqui está um guia de como fazer isso da maneira que o Google quer que façamos. O guia é baseado neste bom tutorial .

  1. Primeiro, pegue o último vôlei com git (clone do git https://android.googlesource.com/platform/frameworks/volley ).

  2. Em seu projeto atual (android studio), clique em [File]-> [New]-> [Import Module].

  3. Agora selecione o diretório onde você baixou o Volley.

  4. Agora o Android Studio pode guiá-lo para fazer o resto, mas continue guia para verificar se tudo funciona corretamente

  5. Abra settings.gradle (localize na raiz) e adicione (ou verifique se isso está incluído):

    include ':app', ':volley'

  6. Agora vá para o build.gradle em seu projeto e adicione a dependência:

    compile project(":volley")

Isso é tudo o que há para fazer, muito mais simples e fácil do que compilar um jar e mais seguro do que confiar em jars de terceiros ou uploads maven.

Warpzit
fonte
1
Isso é o que resolveu meu problema. No entanto, compliquei isso movendo o submódulo para um diretório que criei chamado "3rd_party". Tive que alterar as declarações acima para include ':app', ':3rd_party:volley'e compile project(":3rd_party:volley"). (Usar dois pontos para delinear as pastas me fez tropeçar no início, pensando primeiro que poderia estar apenas denotando um caminho relativo)
ahall
A etapa 2 deve ser Arquivo> Novo> Módulo de importação.
The_Martian
@The_Martian obrigado, eu atualizei para refletir as atualizações do Android Studio.
Warpzit
19

Atualizando a resposta do Warpzit para Android Studio 1.3.2 (diferenças em negrito )
(atualização: parece ser o mesmo para Android 2.0)

  1. Primeiro pegue o último vôlei com git.
  2. Em seu projeto atual (android studio), clique em [ arquivo] -> [Novo] -> [Novo Módulo].
  3. Agora selecione [Import Gradle Project], clique em Next
  4. Agora selecione o diretório onde você baixou o Volley.
  5. Agora o Android Studio pode guiá-lo para fazer o resto, mas continue guia para verificar se tudo funciona corretamente
  6. Abra settings.gradle (localize na raiz) e adicione (ou verifique se isso está incluído):

    incluem ': app', ': volley'

  7. Agora vá para o build.gradle em seu projeto e adicione a dependência:

    projeto de compilação (": volley")

Al Lelopath
fonte
Isso parece importar o módulo para o app e não para o root, o que atrapalha tudo. Alguma ideia de por que isso seria?
Cruncher de
DESCONTINUADA. Esta resposta não é mais válida. Embora tecnicamente "funcionasse", você realmente não deveria fazer assim em 2018+ Use compile 'com.android.volley: volley: <current version here> .0.0'
StarWind0
18

Rapazes muito complicados. Basta incluí-lo nas dependências do Gradle:

dependencies {
    ...
    compile 'com.mcxiaoke.volley:library:1.0.17'
}
wild_nothing
fonte
17
Vale ressaltar que este não é um repositório oficial. Como tal, sempre existe a possibilidade de que um código malicioso possa ser incluído nisso. Provavelmente não vai acontecer, certo? Mas é melhor estar ciente de que pode.
Craig Russell,
Para iniciantes com gradle, aqui estão mais alguns detalhes: blog.chrisblunt.com/android-getting-started-with-volley
BurninLeo
5
SUSPENSO Por favor, note que este projeto está obsoleto e não é mais mantido, use a versão oficial do jCenter. compilar 'com.android.volley: volley: 1.0.0'
StarWind0
10

A maioria dessas respostas está desatualizada.

O Google agora tem uma maneira fácil de importá-lo. Continuaremos a ver muitas informações desatualizadas, pois eles não criaram essa solução por 2 a 3 anos.

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

Tudo que você precisa fazer é adicionar ao seu Build.Gradle o seguinte:

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'
}
StarWind0
fonte
3

Adicione esta linha às dependências em build.gradle:

compile 'com.mcxiaoke.volley:library:1.0.+'
Victor Odiah
fonte
3

Depois de colocar compile 'com.android.volley:volley:1.0.0'em seu arquivo build.gradle (Módulo) em dependências, ele não funcionará imediatamente, você terá que reiniciar o Android Studio primeiro!

Doncic
fonte
Eu estava enfrentando esse problema e uma reinicialização funcionou para mim. Porém, tem que haver uma maneira melhor!
Nikhil Gupta
Tudo que você precisa fazer é atualizar suas dependências. Reiniciar provavelmente iniciou isso para você. Há um banner na parte superior da tela solicitando a atualização. Difícil de perder. Basta pressionar na próxima vez.
StarWind0
Inacreditavelmente, reiniciar o Android Studio resolveu nossa tarde de tentar consertar isso :(
Lucas
2

Adicione esta dependência em seu arquivo gradle.build (Módulo: app)

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

E então sincronize seu arquivo Gradle.

Bhumi Unadkat
fonte
1

No "build.gradle" do seu aplicativo (o aplicativo, não o projeto), adicione o seguinte:

dependencies {
    ...
    implementation 'com.android.volley:volley:1.1.0'
}
Tim Cooper
fonte
1

Adicione isso em seu "build.gradle" de seu aplicativo.

implementação 'com.android.volley: volley: 1.1.1'

Sanjay Goswami
fonte
0

Para adicionar volley como submódulo e obter atualizações regulares do repositório GIT, as seguintes etapas podem ser seguidas. A principal vantagem é que o Volley pode ser personalizado e o código-fonte pode ser obtido do repositório GIT sempre que uma atualização for necessária.

Também está ajudando para fins de depuração.

Siga as etapas abaixo:

Etapa I:

Adicionar volley como submódulo no projeto de aplicativo Android GIT Repo. git submodule add -b master https://android.googlesource.com/platform/frameworks/volley Libraries / Volley

Etapa II:

Em settings.gradle, adicione o seguinte para adicionar volley como um módulo de projeto de estúdio. incluir projeto ': Volley' (': Volley'). projectDir = new File ('../ Libraries / Volley')

Etapa III:

Em app / build.gradle, adicione a seguinte linha para compilar o projeto de compilação do Volley (': Volley')

Isso seria tudo! O Volley foi adicionado com sucesso ao projeto.

Sempre que você quiser obter o código mais recente do repositório oficial do Google Volley, basta executar o comando abaixo

git submodule foreach git pull

Para obter informações mais detalhadas: https://gitsubmoduleasandroidtudiomodule.blogspot.in/

Código de amostra do Repo GIT: https://github.com/arpitratan/AndroidGitSubmoduleAsModule

Arpit Ratan
fonte
0

A linha "compile project (': volley')" estava apresentando este erro:

Erro: falha na execução da tarefa ': volley: processDebugResources'. > com.android.ide.common.process.ProcessException: falha ao executar aapt

Isso foi causado porque as versões compileSdk e buildTools do módulo volley estavam atualmente em "22" e "22.0.1" e meu projeto estava trabalhando com versões mais recentes ("24" e "24.0.1").

SOLUÇÃO:

Abra seu arquivo build.gradle (Módulo: volley) e altere a versão de "compileSdk" e "buildTools", por exemplo, eu mudei isso:

android {
    compileSdkVersion 22
    buildToolsVersion = '22.0.1'
}

por esta:

android {
    compileSdkVersion 24
    buildToolsVersion = '24.0.1'
}

Você não deve mais ter esse erro, espero que ajude :)

Alan Barrera
fonte
0

Ou você pode simplesmente fazer

ant jar

em seu projeto git de vôlei clonado. Agora você deve ver volley.jarna binpasta de projetos de volley . Copie para a app\libspasta do Android Studio . Em seguida, adicione o seguinte na dependenciesseção do build.gradlearquivo de nível de módulo -

compile files('libs/volley.jar')

E você deve importar e usar as classes da biblioteca em seu projeto,

Aniket Thakur
fonte
0

também disponível no repositório mavenCentral()...

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

duas coisas

um: compilar está desatualizado, é melhor usar a implementação,

e dois: o volley 1.0.0 está desatualizado e o projeto de sincronização não funcionará

alternativamente, em build.gradle, adicione a implementação 'com.android.volley: volley: 1.1.1' ou a implementação 'com.android.volley: volley: 1.1. +' para 1.1.0 e versões mais recentes.

Julian Lazaras
fonte
-1

adicione volly ao seu aplicativo studio gradle compilando 'com.android.volley: volley: 1.0.0'

Manish
fonte
-1

passo 1: - Baixe o arquivo volley.jar.

passo 2: - Vá para o seu projeto e defina o menu de exibição do Android para Projeto, em seguida, vá para

app -> libs-> paste your volley.jar arquivo aqui

passo 3: - Clique com o botão direito no arquivo volley.jar e clique em "adicionar como biblioteca". e está tudo feito.

Subodh kumar
fonte