종속 항목 추가
Kotlin
implementation("androidx.media3:media3-ui:1.6.0")
Groovy
implementation "androidx.media3:media3-ui:1.6.0"
PlayerView
가장 중요한 구성요소는 미디어 재생을 위한 뷰인 PlayerView
입니다.
PlayerView
는 재생 중 동영상, 이미지, 자막, 앨범 아트 및 재생 컨트롤을 표시합니다.
PlayerView
에는 Player
인스턴스를 연결 및 연결 해제 (null
전달)하는 setPlayer()
메서드가 있습니다.
PlayerView
는 동영상, 이미지, 오디오 재생 모두에 사용할 수 있습니다. 동영상 재생의 경우 동영상과 자막을 렌더링하고 이미지 재생의 경우 비트맵을 렌더링하며 오디오 파일에 메타데이터로 포함된 아트워크를 표시할 수 있습니다. 다른 UI 구성요소와 마찬가지로 레이아웃 파일에 포함할 수 있습니다. 예를 들어 PlayerView
는 다음 XML에 포함될 수 있습니다.
<androidx.media3.ui.PlayerView
android:id="@+id/player_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:show_buffering="when_playing"
app:show_shuffle_button="true"/>
위 스니펫은 PlayerView
가 여러 속성을 제공함을 보여줍니다.
이러한 속성은 뷰의 동작과 모양과 느낌을 맞춤설정하는 데 사용할 수 있습니다. 이러한 속성의 대부분에는 런타임에 뷰를 맞춤설정하는 데 사용할 수 있는 상응하는 setter 메서드가 있습니다. PlayerView
문서에는 이러한 속성과 setter 메서드가 더 자세히 나와 있습니다.
뷰가 레이아웃 파일에서 선언되면 활동의 onCreate
메서드에서 조회할 수 있습니다.
Kotlin
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) // ... playerView = findViewById(R.id.player_view) }
자바
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // ... playerView = findViewById(R.id.player_view); }
플레이어가 초기화되면 setPlayer
를 호출하여 뷰에 연결할 수 있습니다.
Kotlin
// Instantiate the player. val player = ExoPlayer.Builder(context).build() // Attach player to the view. playerView.player = player // Set the media item to be played. player.setMediaItem(mediaItem) // Prepare the player. player.prepare()
자바
// Instantiate the player. player = new ExoPlayer.Builder(context).build(); // Attach player to the view. playerView.setPlayer(player); // Set the media item to be played. player.setMediaItem(mediaItem); // Prepare the player. player.prepare();
PlayerControlView
PlayerControlView
는 진행률 표시줄과 재생을 제어하는 버튼이 포함된 PlayerView
하위 뷰 중 하나입니다. PlayerControlView
는 PlayerView
외부에서 독립형 구성요소로 사용하기 위한 것이 아닙니다. PlayerView
에서 속성을 설정하거나 (PlayerControlView
에 전달됨) android:id="@id/exo_controller
로 맞춤 컨트롤러를 제공하여 맞춤설정할 수 있습니다.
노출 영역 유형 선택
PlayerView
의 surface_type
속성을 사용하면 동영상 재생에 사용되는 노출 영역 유형을 설정할 수 있습니다. 허용되는 값은 surface_view
, texture_view
, spherical_gl_surface_view
(구형 동영상 재생의 특수 값), video_decoder_gl_surface_view
(확장 프로그램 렌더러를 사용한 동영상 렌더링용), none
(오디오 재생 전용)입니다. 선택할 표시 경로 유형에 관한 자세한 내용은 표시 경로 페이지를 참고하세요.