“ 매주 목요일마다 당신이 항상 하던대로 신발끈을 묶으면 신발이 폭발한다고 생각해보라.
컴퓨터를 사용할 때는 이런 일이 항상 일어나는데도 아무도 불평할 생각을 안 한다. ”- Jef Raskin
맥의 아버지 - 애플컴퓨터의 매킨토시 프로젝트를 주도
반응형
안드로이드스튜디오,유튜브,동영상재생,개발자,콘솔,초보자
유튜브 API를 활용하여, 동영상 재생하기
유튜브의 강의를 참고하며, 만들어보고 있는 중이다. 아직은 여전히 부족한 부분이 많아 동영상을 보면서 하나하나 따라하고 모르는 것이 있으면 인터넷에 검색하며 이게 무엇인지에 대해서 배우고 있다. 처음으로 유튜브API를 활용하여, 동영상을 재생하는 어플을 만들어보았다. 영상에선 현재의 사용하는 버전보다 구버전이라 조금씩 틀려 진땀뺏다 인터넷의 힘으로 스마트폰을 연결하고 실행하니 잘 되는 모습에 뿌-듯하다
먼저, 레이아웃 구성은 view를 추가했는데 여기서 youtubeView로 설정하였다. 그리고, 버튼을 하나 추가했다. 버튼을 추가한 이유는 이 버튼을 누르면 동영상이 재생 될 수 있게 하기 위해서였다.
그리고, AndroidManifest.xml에 uses-permission으로 android.permission.INTERNET를 추가했다.
구글 검색 창에 Youtube API[링크]를 검색하고 해당 JAR 파일을 Project Structure -> Modules -> + -> import JAR/AAR Package를 누르고 해당 파일을 선택하고 추가했다.
이제 구글 API 콘솔[링크]에 들어가서 사용자 인증과 프로젝트를 추가했다. 여기서 SHA1 값은 Gradle의 signingReport에서 SHA1 값을 입력했다.
이제 다시 안스(안드로이드 스튜디오)로 돌아가서 소스 코딩을 했다.
* MainActivity.java
package com.example.tutorial7;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
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;
public class MainActivity extends YouTubeBaseActivity {
YouTubePlayerView youTubePlayerView;
Button btn;
YouTubePlayer.OnInitializedListener listener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = findViewById(R.id.youtubeBtn);
youTubePlayerView = findViewById(R.id.youtubeView);
listener = new YouTubePlayer.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
youTubePlayer.loadVideo("KWeEQ9MXA9Q"); // 동영상
}
@Override
public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
}
};
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
youTubePlayerView.initialize("AIzaSyBbFX9UPgdJLeGDmE0EFAhKdgMsjLfsLZM", listener); // api
}
});
}
}
* activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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=".MainActivity">
<com.google.android.youtube.player.YouTubePlayerView
android:id="@+id/youtubeView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="80dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/youtubeBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="160dp"
android:layout_marginLeft="160dp"
android:layout_marginTop="488dp"
android:text="재 생"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
앞으로도 열공 !