공부방/Android

Using Youtube API In Android

soycrab 2019. 2. 11. 15:43

안드로이드 Youtube API 사용 방법 

 

1.  https://developers.google.com/youtube/android/player/downloads/?hl=ko   에서 jar 파일 다운로드 



2. (Mac 기준) Android Studio 


-> File 


-> project structure 


-> 좌측 리스트에 보이는 Modules 하단에 App 클릭 


-> Dependencies 탭 클릭 


-> 좌측 하단 + 버튼 클릭 


->  jar Dependencies 클릭 


-> 1 에서 다운 받은 Youtube jar 파일 추가 -> 사용 준비 완료 


3. 예제 (Thumbnail 출력 및 기본 Youtube 재생화면 출력)


아래 소스 코드 기능은 


1. 해당 비디오 썸네일 출력

2. 썸네일 클릭시 유투브 기본 재생화면 실행 입니다. 


YoutubeFragment.kt

class YoutubeFragment : Fragment() {

var videoId : String = "YoutubeVideoId"
private val youtubeAPIKey = "YouTubeAPIKey"

override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.youtuebe, container, false)
}

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
youtubeThumbnailView.initialize(
youtubeAPIKey, object : YouTubeThumbnailView.OnInitializedListener {
override fun onInitializationSuccess(youTubeThumbnailView: YouTubeThumbnailView, youTubeThumbnailLoader: YouTubeThumbnailLoader) {
youTubeThumbnailLoader.setVideo(
videoId)
youTubeThumbnailLoader.setOnThumbnailLoadedListener(
object : YouTubeThumbnailLoader.OnThumbnailLoadedListener {
override fun onThumbnailLoaded(youTubeThumbnailView: YouTubeThumbnailView, s: String) {
youTubeThumbnailLoader.release()
}

override fun onThumbnailError(youTubeThumbnailView: YouTubeThumbnailView, errorReason: YouTubeThumbnailLoader.ErrorReason) {}
})
}

override fun onInitializationFailure(youTubeThumbnailView: YouTubeThumbnailView, youTubeInitializationResult: YouTubeInitializationResult) {}
})

youtubeThumbnailView.setOnClickListener {
val intent = YouTubeStandalonePlayer.createVideoIntent(activity, youtubeAPIKey, videoId, 0, true, false)
startActivity(intent)
}
}

}


youtube.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">

<com.google.android.youtube.player.YouTubeThumbnailView
android:id="@+id/youtubeThumbnailView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

</LinearLayout>


반응형