2014-03-26 9 views
22

내 이해에서 apklib에는 코드 + 리소스가 Maven과 공유되어 있습니다. aar 파일은 Gradle으로 배포됩니다.Android dependencies : apklib 대 aar 파일

aar은 apklib와 크게 다른 점이 하나 있습니다. 클래스가 컴파일되어 aar의 루트에있는 classes.jar에 포함됩니다. apklib에는 컴파일 된 클래스 파일이나 jar를 포함 할 수 없습니다.

1 누군가 apklibaar 파일의 주요 차이점을 설명 할 수 있습니까?

2 할 수 Mavenaar을 사용할 수 있습니까? Gradleapklib을 사용할 수 있습니까?

3 "더 나은"형식은 무엇입니까?

답변

16

1 누군가 apklib와 aar 파일의 주요 차이점을 설명 할 수 있습니까?

  1. aar 더 소스 코드와 당신이 원하지 않는 경우에 libs 폴더 안에 자바 항아리를 포함 할 수 있습니다 : 당신이 말한 사람뿐만 아니라, 내 마음에 오는

커플의 차이 Google Play 서비스처럼 소스 코드를 제공합니다.

  • aar에는 사용자 정의 proguard 파일과 사용자 정의 lint 규칙이 포함될 수 있습니다. 그러나 지금은 고려하지 않았습니다.
  • 2 Can Maven은 aar를 사용할 수 있습니까? Gradle이 apklib를 사용할 수 있습니까?

    Android Maven Plugin은 버전 3.7.0부터 aar을 지원합니다. Gradle은 apklib 종속성을 지원하지 않지만 android-libraryapklib (this post 참조)으로 내보낼 수 있습니다.

    +1

    _Maven은 버전 3.7.0_부터 aar를 지원합니다 : [다운로드 페이지] (http://maven.apache.org/download.cgi)에 따르면 3.2.2는 메이븐의 최신 버전입니다, 맞습니까? – rafaelportela

    +0

    나는 안드로이드 메이븐 플러그인을, 미안하다. – rciovati