반응형
소스 출처 : https://www.inflearn.com/course
먼저 아래 유튜브 안드로이드 Player API를 다운 받아야합니다.
압축 파일을 푼뒤 libs폴더의 jar파일을 복사하여 프로젝트 폴더내의 app/libs에 붙여넣기 합니다.
안드로이드 스튜디오에서 라이브러리를 사용하기위해
File - Project Structue로 가서 Modules에 app으로 간 뒤 Dependencies탭으로 갑니다.
그리고 아까 다운받은 jar파일을 추가해줍니다.
이제 레이아웃을 그릴 차례입니다.
직접 xml파일을 쓰셔도 되고 아래와 같이 View를 추가하신다음 YouTubePlayerView를 추가시켜도 됩니다.
아래처럼 선택하셔도됩니다.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.kch.tutorial6_youtube.MainActivity">
<view
android:id="@+id/youtubeView"
class="com.google.android.youtube.player.YouTubePlayerView"
id="@+id/view2"
android:layout_width="345dp"
android:layout_height="215dp"
android:layout_marginLeft="8dp"
android:layout_marginRight="8dp"
android:layout_marginTop="16dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:layout_editor_absoluteX="5dp" />
<Button
android:id="@+id/youtubebutton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Start"
app:layout_constraintTop_toTopOf="parent"
android:layout_marginTop="8dp"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="8dp"
android:layout_marginLeft="8dp"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginRight="8dp"
app:layout_constraintRight_toRightOf="parent" />
</android.support.constraint.ConstraintLayout>
그다음 YouTube API를 사용하기 위해서 구글 APIs에서 API키를 발급받아야합니다.
아래와 같이 안드로이드 스튜디오에서 오른쪽 Gradle버튼을 누르고 Tasks->android->signingReport를 더블클릭하면
아래 Gradle Console에 다음과 같이 SHA1값이 뜹니다. 이 값을 복사한뒤
구글 API 및 서비스에서 사용자 인증 정보를 만든후 클릭해보면
아래와 같이 뜨는데 Android apps를 클릭하고 패키지 이름 및 지문 추가를 누릅니다.
다음과 같이 프로젝트의 패키지명과 아까 복사해둔 SHA-1 인증서 지문을 넣어줍니다.
마지막 MainActivity.java 파일을 작성합니다.
package com.example.kch.tutorial6_youtube;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import com.google.android.youtube.player.YouTubeBaseActivity;
import com.google.android.youtube.player.YouTubeInitializationResult;
import com.google.android.youtube.player.YouTubePlayer;
import com.google.android.youtube.player.YouTubePlayerView;
//YouTubeBaseActivity로 상속 받는것에 유의
public class MainActivity extends YouTubeBaseActivity {
YouTubePlayerView youTubeView;
Button button;
YouTubePlayer.OnInitializedListener listener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.youtubebutton);
youTubeView = (YouTubePlayerView)findViewById(R.id.youtubeView);
//리스너 등록부분
listener = new YouTubePlayer.OnInitializedListener(){
//초기화 성공시
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
youTubePlayer.loadVideo("QadSVWXF_ks");//url의 맨 뒷부분 ID값만 넣으면 됨
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
}
};
button.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
//첫번째 인자는 API키값 두번째는 실행할 리스너객체를 넘겨줌
youTubeView.initialize("AIzaSyAmkohU9WUmoA-1cGo1yby0545s7XfZaEo", listener);
}
});
}
}
실행 화면
버튼을 누르면 아래와 같이 영상이 정상적으로 실행됨을 알 수 있습니다.
'프로그래밍 > 안드로이드' 카테고리의 다른 글
안드로이드 - 프로젝트2. 액티비티 화면 전환 (0) | 2017.10.09 |
---|---|
안드로이드 - 프로젝트1. 애플리케이션 화면 디자인 (0) | 2017.10.06 |
안드로이드 - 8. 레이아웃(layout) (0) | 2017.10.06 |
안드로이드 - 7. 이미지 버튼 만들기 (0) | 2017.10.03 |
안드로이드 - 5. 인텐트를 이용한 화면 전환 (0) | 2017.09.29 |
안드로이드 - 4. 커스텀 리스트뷰(custom listview) 만들기 (0) | 2017.09.23 |
안드로이드 - 3. 네비게이션 드로어(Navigation Drawer) 사용하기 (8) | 2017.09.23 |
안드로이드 - 2. AlertDialog 사용 예제 (0) | 2017.09.17 |