AAR 라이브러리 개요

아래는 Android Developers 공식 문서에 소개된 AAR 라이브러리에 대한 설명입니다.

 

Android 라이브러리는 구조적으로 Android 앱 모듈과 동일합니다. Android 라이브러리에는 소스 코드, 리소스 파일, Android 매니페스트를 비롯하여 앱을 빌드하는 데 필요한 모든 항목이 포함될 수 있습니다.

하지만, 이 라이브러리는 기기에서 실행되는 APK로 컴파일되는 대신 Android 앱 모듈의 종속 항목으로 사용할 수 있는 Android 보관 파일(AAR)로 컴파일됩니다. JAR 파일과 달리, AAR 파일은 Android 애플리케이션에 다음과 같은 기능을 제공합니다.

 

AAR 파일에는 Android 리소스 및 매니페스트 파일이 포함될 수 있습니다. 이 파일에서는 자바 클래스 및 메서드 외에 레이아웃 및 드로어블과 같은 공유 리소스를 번들로 구성할 수 있습니다.

AAR 파일은 앱 모듈의 C/C++ 코드에서 사용할 C/C++ 라이브러리를 포함할 수 있습니다.


라이브러리 모듈은 다음과 같은 상황에 유용합니다.

활동, 서비스, UI 레이아웃 등 일부 구성요소를 동일하게 사용하는 여러 앱을 빌드하는 경우

여러 APK 변형(예: 무료 및 유료 버전)에 포함되는 앱을 빌드하며 두 버전에서 모두 동일한 핵심 구성요소가 필요한 경우

 

AAR 라이브러리는 안드로이드 개발자라면 build.gradle 파일에서 implementation (또는 api) 키워드를 통해 의존성에 포함하여 자주 사용하게 되는데, 필자가 소개하고자 하는 내용은 흔히 사용되는 오픈소스 라이브러리가 아닌 좀더 private한? 라이브러리를 구성했던 방법에 대해서 말하고자 합니다.

 

아래의 사진처럼 우리는 다양한 AAR 라이브러리를 사용하고 있습니다!

 

AAR 라이브러리 모듈 생성

  1. File > New > New Module을 클릭합니다.

  1. Create New Module 창이 표시되면 Android Library, Next를 차례로 클릭합니다.
  2. 라이브러리에 이름을 지정하고 라이브러리의 코드를 위한 최소 SDK 버전을 선택한 후 Finish를 클릭합니다.

라이브러리가 생성되었다면, build.gradle 파일을 확인해보자.

기존 어플리케이션의 경우 어플리케이션으로 표시되는 것과 달리, 라이브러리로 표시되는 것을 확인할 수 있다.

 

//  어플리케이션을 라이브러리로 변환하여 사용하고 싶은 경우, 이 값을 위의 사진처럼 라이브러리로 변경하여 사용할 수 있다.
id 'com.android.application'

 

+ Recent posts