Volley (또는 기타 라이브러리)를 Android Studio 프로젝트에 통합하는 가장 좋은 방법


81

이 작업을 수행하는 가장 좋은 방법에 대한 다른 조언을 보았습니다. 이 질문 은 항아리를 만드는 것을 다룹니다. 다른 곳에서는 단순히 발리 소스를 자신의 프로젝트에 복사하라는 조언을 보았습니다. android.com의 라이브러리에 대한 이 섹션 은 가장 권위있는 것 같습니다. 그러나 발리를 컴파일 한 후에는 aal 라이브러리가 없지만 그 섹션에는 있어야한다고 말합니다.

그래서 제 질문은 이것입니다. 표준 레이아웃이있는 기존 Android Studio 프로젝트와 git 저장소가 있습니다. 발리를 추가하려면 어떻게해야합니까? 어디로 다운로드해야합니까? Android Studio에 어떻게 추가해야합니까? 수정해야하는 Gradle 파일 (있는 경우)

바라건대, 여러분이이 작업을 몇 번 해보 셨으면합니다. 이것은 빵빵한 일이 될 것입니다. 그러나 저는 간단한 설명을 찾을 수 없었습니다.

-

업데이트 중 , Scott Barta의 제안에 따라.

volley 저장소의 gradle.build 파일에는이 줄이 있습니다.

apply plugin: 'android-library'

문서 에 따르면 " 라이브러리 프로젝트는 APK를 생성하지 않고 .aar 패키지 (Android 아카이브의 약자)를 생성합니다. "그러나 volley 프로젝트를 빌드 할 때 .aar가 생성되지 않습니다.

Volley는 Android 팀에서 만든 라이브러리 프로젝트이므로 .aar 패키지로 생성 및 사용하도록 의도 된 것 같습니다. .aar를 생성하는 것이 바람직한 지 여부와이를 수행하는 방법에 대한 조언을 주시면 감사하겠습니다.



그것은 당신을 거기에 가장 많이 가져다 줄 것입니다. 여전히 막혀 있고 문제가있는 경우 질문을 수정하거나 완전히 다른 경우 새 질문을하십시오.
Scott Barta 2014 년

Volley를 종속성 모듈로 사용하려면 link 를 참조 하십시오 .
cmoaciopm

@ScottBarta의 링크는 volley android 네트워킹 라이브러리 의 중복으로 표시되었습니다 .
Brian Marick 2015 년

이를 달성하기위한 자세한 설명은 다음 링크에 있습니다. gitsubmoduleasandroidtudiomodule.blogspot.in
Arpit Ratan

답변:


125

최근 업데이트:

대신 jCenter의 공식 버전을 사용하십시오.

dependencies {
    compile 'com.android.volley:volley:1.0.0'
}

아래 종속성은 더 이상 유지되지 않는 더 이상 사용되지 않는 발리를 가리 킵니다.

원래 답변

build.gradle 파일의 종속성 섹션에서이를 사용하여 volley를 사용할 수 있습니다.

  dependencies {
      compile 'com.mcxiaoke.volley:library-aar:1.0.0'
  }

업데이트 :

공식은 아니지만 공식 발리의 거울 사본입니다. 공식 Volley Repository와 정기적으로 동기화되고 업데이트되므로 걱정없이 계속 사용할 수 있습니다.

https://github.com/mcxiaoke/android-volley


7
가져 오기는 Volley의 공식 저장소가 아닙니다. 누군가가 Maven Central에 업로드 한 것입니다. (AFAIK)
pjco 2014

2
ya 나는 그 사람을 알고 있지만 차이점은 없습니다. 단지 거울, 정확히 동일하고 공식 발리 저장소 1.0.1과 동기화되었습니다 (2014.02.13에 업데이트 됨). 이것이 오픈 소스의 아름다움이므로 사용할 수 있다고 걱정하지 마십시오. github.com/mcxiaoke/android-volley
pyus13 2014-02-19

16
모든 사람에게 모든 편집증을 일으키려고하는 것은 아니지만, 그 저장소의 관리자는 어떤 그늘진 물건에 쉽게 빠져들 수 있습니다. 개인적으로 저장소를 감사하지 않는다면주의해서 진행하십시오.
mgalgs


8
공식 구글 게시 발리의 목표는 지금이, 내 대답은 아래를 참조하시기 바랍니다 ( com.android.volley:volley:1.0.0)
샘 스턴

138

다른 사람들도 지적했듯이 Volley는 공식적으로 Github에서 사용할 수 있습니다 .

발리에 대한 gradle 종속성에 다음 줄을 추가하십시오.

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


소스에서 발리를 설치하려면 아래를 읽으십시오.

앱에 공식 발리 저장소를 유지하고 싶습니다. 이렇게하면 공식 소스에서 가져와 다른 사람에게 의존하지 않고 다른 사람이 표현한 우려를 완화하지 않고도 업데이트를받을 수 있습니다.

앱과 함께 하위 모듈로 발리를 추가했습니다.

git submodule add -b master https://github.com/google/volley.git volley

내 settings.gradle에서 발리를 모듈로 추가하기 위해 다음 줄을 추가했습니다.

include ':volley'

내 app / build.gradle에서 volley 프로젝트에 대한 컴파일 종속성을 추가했습니다.

compile project(':volley')

그게 다야! Volley는 이제 내 프로젝트에서 사용할 수 있습니다.

발리 모듈을 구글의 repo와 동기화하고 싶을 때마다 이것을 실행합니다.

git submodule foreach git pull

7
이것이 선호되는 솔루션이 아닌 이유는 무엇입니까? 내가 볼 수 있듯이 공식 버전, 쉬운 업데이트 및 프로젝트와 해당 종속성 간의 의미 체계를 얻을 수 있습니다. 다른 방법을 선택해야하는 타당한 이유가 있습니까, 아니면 다른 방법이 Android 커뮤니티의 표준 절차이기 때문입니까?
Andreas Hagen

2
이것이 선호되는 솔루션이라고 생각하지만 Google에서 제대로 문서화하지 않았습니다. 또한 위에서 언급 한 다른 보안 문제와는 별도로 공식 소스에서 가져 오면 라이브러리 업데이트를 제어 할 수 있습니다 (원하는대로 빨리 또는 늦게).
shauvik

3
좋아, 고마워. 추가해야 할 것은 settings.gradle의 volley 라이브러리 위치뿐입니다. project ( ': volley'). projectDir = new File ( 'libraries / volley') 라이브러리 폴더에 배치했기 때문에
Björn Kechel

감사합니다! 이것은 공식적인 답변해야한다
비벡 싱

패키지 관리자의 작업을 수행하기 위해 버전 제어를 요청할 필요가 없습니다.
Rikki Gibson 2015

26

요즘

dependencies {
    compile 'com.android.volley:volley:1.0.0'
}   

그날을 되 돌리는 다양한 방법 (원래 답변)

  • git의 소스 파일 사용 (여기에 설명 된 수동 / 일반적인 방법)

    1. git 클라이언트를 다운로드 / 설치합니다 (아직 시스템에없는 경우) : http://git-scm.com/downloads (또는 git clone https://github.com/git/git... sry bad one을 통해 ,하지만 저항 할 수 없었습니다 ^^)
    2. 실행 git clone https://android.googlesource.com/platform/frameworks/volley
    3. com폴더 내 [path_where_you_typed_git_clone]/volley/src에서 프로젝트 app/src/main/java폴더 로 복사하십시오 (이미 com 폴더가있는 경우 대신 통합하십시오 !! ;-))

    파일은 Android Studio에 즉시 표시됩니다. Eclipse의 right-click경우 src폴더에서 먼저 refresh(또는 F5)을 눌러야 합니다.

  • "비공식"메이븐 미러를 통해 Gradle 사용

    1. 프로젝트 src/build.gradle파일에 다음과 같은 발리 종속성을 추가하십시오.

      dependencies {
          compile fileTree(dir: 'libs', include: ['*.jar'])
          // ...
      
          compile 'com.mcxiaoke.volley:library:1.+'
      }
      
    2. Try Again파일 상단에 즉시 표시되어야하는 항목을 클릭 하거나 Build그렇지 않은 경우에만 클릭하십시오.

    여기서 주요 "장점"은 버전을 최신 상태로 유지하는 반면 다른 두 경우에는 발리를 수동으로 업데이트해야한다는 것입니다.

    "단점"은 공식적으로 구글이 아니라 제 3 자 주간 미러입니다.

    그러나이 두 가지 요점은 실제로 필요 / 원하는 것과 관련이 있습니다. 또한 업데이트를 원하지 않으면 원하는 버전을 대신 넣으십시오 compile 'com.mcxiaoke.volley:library:1.0.7'.


Android Studio 1.0.2에서는 항아리를 마우스 오른쪽 버튼으로 클릭하여 추가 할 필요가 없습니다. 기본 Gradle 규칙은 자동으로 추가합니다. 또한 새로운 Studio 사용자 인 경우 항아리가 프로젝트보기에 표시되지 않는다는 사실에 놀랄 수 있습니다. 보기 바로 위의 스피너에서 'Android'설정으로 필터링됩니다. "프로젝트"로 변경하여 실제로 무언가를 수행했는지 확인하십시오.
Brian Marick 2015 년

알아 두세요, thx! 답변에서 제거했습니다! 그러나 베타 사용자를위한 발언으로 : 첫 번째 옵션 (라이브러리로 추가)을 선택하면, 당신은 필요합니다 right-clickvolley.jarlibs안드로이드 스튜디오에서 폴더를 선택 Add As Library...하여 프로젝트에 사용할 수 있습니다 할 수 있습니다.
Levite

1
@Levit, 두 번째 글 머리 기호 관련- "git의 소스 파일 사용 (여기에 설명 된 다소 수동 / 일반적인 방법)"Im android studio를 사용하여 내 프로젝트에 라이브러리를 추가하고 settings.gradle 및 종속성을 편집했습니다. 이 제발 설명 할 수있는, 잘 작동되고 있지만 등록되지 않은 VCS는 루트가 감지라는 메시지가, 자식 아래이지만, 설정에 등록되지 않은
ERSEN 오스만

@johncarter : 두 번째 글 머리 기호 / 방법을 사용하면 설정 및 종속성을 편집하지 않고 올바른 폴더에 배치하는 것만으로도 괜찮습니다. 그러나 AndroidDevelopers에는 이러한 방식에 대한 다소 포괄적 인 가이드도 있습니다. developer.android.com/training/volley
Levite

2
훌륭한 답변에 감사드립니다. Volley.jar 메서드는 상자에서 나에게 효과적이었습니다!
빈센트는 매튜

11

오늘부터 JCenter에서 사용할 수있는 공식 Android 호스팅 Volley 사본이 있습니다.

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

이것은 AOSP 발리 소스 코드에서 컴파일되었습니다.


게시 해 주셔서 감사합니다! 이것은 정답으로 표시되어야합니다.
David Lord

5

최신 정보:

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

이전 답변 : 앱 모듈의 build.gradle에 다음이 필요합니다.

dependencies {
        compile 'com.mcxiaoke.volley:library:1.0.19'
        (Rest of your dependencies)

    }

이것은 공식 저장소는 아니지만 매우 신뢰할 수있는 저장소입니다.


1
조심하세요. 여기에서 호스팅되는 발리 라이브러리는 구식이며 공식적으로 호스팅되지 않습니다. 하단의 내 게시물을 참조하십시오.
shauvik

1

Android 스튜디오에서 발리를 통합하려면

  1. 터미널 (
    git clone https://android.googlesource.com/platform/frameworks/volley ) 에 다음 명령을 붙여넣고 실행합니다.

    이에 대해서는 안드로이드 개발자 튜토리얼을 참조하십시오 . src 디렉토리에 volley

    폴더 이름을 생성합니다 .
  2. 그런 다음 android studio로 이동하여 프로젝트를 마우스 오른쪽 버튼으로 클릭하십시오.
  3. 목록에서 새로 만들기-> 모듈을 선택합니다.
  4. 그런 다음 아래 목록에서 기존 프로젝트 가져 오기를 클릭하십시오.
  5. 소스 디렉토리라는 텍스트 입력 영역이 표시되고 다운로드 한 폴더 (발리)를 찾은 다음 마침을 클릭합니다.
  6. 프로젝트보기에서 폴더 발리를 볼 수 있습니다.
  7. Android 뷰로 전환하고 build : gradle (Module : app) 파일을 열고 종속성 영역에 다음 줄을 추가합니다.

    'com.mcxiaoke.volley : library-aar : 1.0.0'컴파일

  8. 이제 프로젝트를 동기화하고 프로젝트도 빌드하십시오.


0

Volley를 별도의 프로젝트로 설정했습니다. 그렇게하면 어떤 프로젝트에도 묶이지 않고 독립적으로 존재합니다.

또한 Nexus 서버 (내부 저장소) 설정이 있으므로
필요한 모든 프로젝트에서 'com.mycompany.volley : volley : 1.0.4' 를 컴파일 할 때 발리에 액세스 할 수 있습니다 .

Volley 프로젝트를 업데이트 할 때마다 다른 프로젝트의 버전 번호 만 변경하면됩니다.

이 접근 방식에 매우 편안합니다.


0

더하다

compile 'com.mcxiaoke.volley:library:1.0.19'
        compile project('volley')

종속성, 앱의 build.gradle 파일 아래

라이브러리의 build.gradle 파일을 방해하지 마십시오. 앱의 GRADLE 파일은 사용자 만 변경하면됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.