AndroidX Media는 로컬 재생(ExoPlayer를 통해), 비디오 편집(Transformer를 통해) 및 미디어 세션을 포함하여 Android에서 미디어 사용 사례를 구현하기 위한 라이브러리 모음입니다.
개발자.android.com에서 기존 ExoPlayer 및 MediaSession 사용자를 위한 마이그레이션 가이드를 찾을 수 있습니다.
AndroidX 미디어 릴리스는 API 안정성을 보장하여 API 표면이 가장 일반적으로 사용되는 API에 대해 이전 버전과의 호환성을 유지하도록 보장합니다. 고급 사용 사례를 위한 API는 불안정한 것으로 표시됩니다. Lint 경고 없이 불안정한 메서드나 클래스를 사용하려면 사용하기 전에 OptIn 주석을 추가해야 합니다. 자세한 내용은 UnstableApi 설명서를 참조하세요.
Google Maven 저장소에서 라이브러리를 가져올 수 있습니다. 이 GitHub 저장소를 복제하고 로컬에서 모듈에 의존하는 것도 가능합니다.
AndroidX Media 사용을 시작하는 가장 쉬운 방법은 앱 모듈의 build.gradle.kts
파일에 필요한 라이브러리에 Gradle 종속 항목을 추가하는 것입니다.
예를 들어 DASH 재생 지원 및 UI 구성 요소를 갖춘 ExoPlayer에 의존하려면 다음과 같이 모듈에 종속성을 추가할 수 있습니다.
implementation( " androidx.media3:media3-exoplayer:1.X.X " )
implementation( " androidx.media3:media3-exoplayer-dash:1.X.X " )
implementation( " androidx.media3:media3-ui:1.X.X " )
또는 Gradle Groovy DSL build.gradle
에서 다음을 수행합니다.
implementation ' androidx.media3:media3-exoplayer:1.X.X '
implementation ' androidx.media3:media3-exoplayer-dash:1.X.X '
implementation ' androidx.media3:media3-ui:1.X.X '
여기서 1.XX
선호하는 버전입니다. 모든 모듈은 동일한 버전이어야 합니다.
라이브러리 모듈의 전체 목록을 포함한 자세한 내용은 AndroidX Media3 개발자.android.com 페이지를 참조하세요.
이 저장소에는 수동으로 빌드해야 하며 Maven 저장소에서 사용할 수 없는 외부 라이브러리에 의존하는 일부 모듈이 포함되어 있습니다. 자세한 내용은 라이브러리 디렉토리 아래의 개별 README를 참조하세요.
아직 활성화하지 않은 경우 android
섹션에 다음을 추가하여 AndroidX 미디어에 따라 모든 build.gradle.kts
파일에서 Java 8 지원을 활성화해야 합니다.
compileOptions {
targetCompatibility = JavaVersion . VERSION_1_8
}
또는 Gradle Groovy DSL build.gradle
에서 다음을 수행합니다.
compileOptions {
targetCompatibility JavaVersion . VERSION_1_8
}
Gradle minSdkVersion
이 20 이하인 경우 빌드 오류를 방지하려면 multidex를 활성화해야 합니다.
일부 라이브러리를 사용할 때는 리포지토리를 복제하고 로컬로 모듈에 의존해야 합니다. 로컬 변경을 원하거나 main
분기를 사용하려는 경우에도 적합한 접근 방식입니다.
먼저 저장소를 로컬 디렉터리에 복제합니다.
git clone https://github.com/androidx/media.git
다음으로, 프로젝트의 settings.gradle.kts
파일에 다음을 추가하고 path/to/media
로컬 복사본의 경로로 바꿉니다.
(gradle as ExtensionAware ).extra[ " androidxMediaModulePrefix " ] = " media3- "
apply (from = file( " path/to/media/core_settings.gradle " ))
또는 Gradle Groovy DSL settings.gradle
에서 다음을 수행합니다.
gradle . ext . androidxMediaModulePrefix = ' media3- '
apply from : file( " path/to/media/core_settings.gradle " )
이제 AndroidX 미디어 모듈이 프로젝트의 일부로 나타나는 것을 볼 수 있습니다. 다른 로컬 모듈에서와 마찬가지로 build.gradle.kts
에서 이를 사용할 수 있습니다. 예를 들면 다음과 같습니다.
implementation(project( " :media3-lib-exoplayer " ))
implementation(project( " :media3-lib-exoplayer-dash " ))
implementation(project( " :media3-lib-ui " ))
또는 Gradle Groovy DSL build.gradle
에서 다음을 수행합니다.
implementation project( ' :media3-lib-exoplayer ' )
implementation project( ' :media3-lib-exoplayer-dash ' )
implementation project( ' :media3-lib-ui ' )
기본적으로 MIDI 모듈은 추가 Maven 저장소 구성이 필요하므로 로컬 종속성으로 비활성화됩니다. 이를 로컬 종속성으로 사용하려면 README 모듈에 설명된 대로 JitPack 저장소를 구성한 다음 settings.gradle.kts
파일에서 모듈 빌드를 활성화하세요.
gradle.extra. apply {
set( " androidxMediaEnableMidiModule " , true )
}
또는 Gradle Groovy DSL settings.gradle
에서 다음을 수행합니다.
gradle . ext . androidxMediaEnableMidiModule = true
개발 작업은 main
브랜치에서 이루어집니다. 풀 요청은 일반적으로 이 분기에 이루어져야 합니다.
release
브랜치는 가장 최근의 안정적인 릴리스를 보유합니다.
Android Studio를 사용하여 AndroidX 미디어를 개발하려면 이 저장소의 루트 디렉터리에서 프로젝트를 열면 됩니다.