안드로이드 스튜디오 동영상 출력 video view
- 프로그래밍/안드로이드
- 2020. 9. 28.
250x250
안드로이드 스튜디오 동영상 출력 Video view
안녕하세요.
오늘은 안드로이드 스튜디오로 간단하게 동영상을 출력할 수 있는 방법에 대한 글입니다.
Video view를 이용해 동영상을 출력하는 방법으로 그냥 간단하게 이렇게 하면 출력이 된다 수준의 글입니다.
- 동영상 출력을 위한 코드.
- Video view 실행 결과.
동영상 출력을 위한 코드.
이번 글에서는 test용 mp4 파일만 준비하면 됩니다.
*해당 글은 웹사이트에 올려놓은 mp4를 실행하는 방법에 대한 내용으로 사실상 사용하기는 힘들어 보입니다.
(요즘 사용하는 영상들은 거의 유튜브 같은거라..)
이 글에서는 테스트를 위해 제가 깃허브에 올려놓은 test.mp4파일을 사용할 겁니다.
1. 동영상을 출력해줄 Video view를 추가하기.
먼저 video view를 사용할 activity를 추가해줍니다.
빈 액티비티를 생성해서 VideoActivity.java, activity_video.xml파일이 생성되었습니다.
activity_video.xml에 VideoView를 추가합니다.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".VideoActivity">
<VideoView
android:id="@+id/videoView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</RelativeLayout>
2. VideoView에 영상을 띄워주기 위한 코드를 작성합니다.
VideoActivity.java에 이런 식으로 코드를 작성했습니다.
package com.troy.artmap;
import androidx.appcompat.app.AppCompatActivity;
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
public class VideoActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video);
//artivitiy_video.xml에 있는 VidioView
final VideoView videoview=(VideoView)findViewById(R.id.videoView);
//Video View에서 보여줄 동영상주소.
Uri url= Uri.parse("https://ykarr.github.io/web/test.mp4");
videoview.setVideoURI(url);
//비디오 컨트롤바.
videoview.setMediaController(new MediaController(this));
//videoview.start();
}
}
3. 인터넷에서 영상을 가져와야 해서 권한 설정을 해줘야 함.
Manifests->AndroidManifest.xml로 이동합니다.
아래의 내용을 추가해줍니다.
<!-- 외부 URL로부터 동영상을 스트리밍하기 위한 권한. -->
<uses-permission android:name="android.permission.INTERNET" />
<!-- 재생중 화면 어두워짐, 잠김 방지하기 위한 권한. -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
Video view 실행 결과.
그럼 이제 위의 코드를 실행해보겠습니다.
*이 글과 관계없는 내용이 해당 영상에 있습니다.