본문 바로가기
슬기로운 자바 개발자 생활/스프링 및 자바웹 서비스

Youtube API를 이용한 업로드 기능 구현(1)

by 슬기로운 동네 형 2016. 5. 5.
반응형

안녕하세요. 제가 개발 중인 사커베테랑은 영상콘텐츠가 핵심인 서비스입니다.

안드로이드 유투브 API를 사용해서  영상 썸네일, 영상플레이 등의 간단한 기능들을 쉽게 구현했지만, 업로드는 예상보다 꽤 복잡하네요.

메인 주소 : https://www.youtube.com/yt/dev/ko/api-resources.html

심플하게 유투브 등록 영상을 보여주거나 업로드 하는 앱을 개발하실 경우에는 위의 메인 주소에 Android 리소스, 만 사용해도 될 것 같습니다.

그러나 디테일하고 여러기능이 포함된 복잡한 앱을 개발 하실 경우에는 위의 메인 주소 ,데이터 API, 의 자바쪽 코드를 꼭 섭렵해야 할 거 같습니다. 

 

 이번에 구글에서 제공하는 API들을 이것저것 경험 해볼 수 있어서 나름 좋았기는 했는데 업로드 부분이 레퍼런스가 많이 없는 듯해서 블로그에 남겨 봅니다. 

 꽤 긴 이야기가 될 것이기 때문에 우선은 샘플 프로젝트를 하나 분석해보겠습니다.

참조사이트 1. https://github.com/youtube/yt-direct-lite-android

제가 여러 사이트를 돌아다녀보니 결국 이 소스만한 것이 없기에, 참고하기로 했습니다.

단순히 영상을 업로드하는 것은 안드로이드 유투브 API 중 아래 인텐트를 사용하면 됩니다.

참조사이트2. https://developers.google.com/youtube/android/player/reference/com/google/android/youtube/player/YouTubeIntents?hl=ko#Summary

버튼클릭시 영상 갤러리를 열고, 유저는 업로할 영상을 선택하고, 그 다음 onActivityResult 에서 아래 인턴트를 호출하면 유투브 업로드 화면이 뜹니다.

 Intent intent = YouTubeIntents.createUploadIntent(this, data.getData());  startActivity(intent);

단, 위의 기능을 사용하게 되면 업로드 후 업로드한 비디오가 무엇인지 유투브 측으로 부터 videoid를 리턴 받을 방법이 없습니다.

저는 업로드를 한 후에 업로드 된 비디오ID를 가져와서 활용해야 하기 때문에 위의 단순한 기능을 사용할 수 없었습니다.

그래서 업로드 기능부분을 따로 구현해야 합니다.

참조사이트1번을 다운 받아서 안드로이드 스튜디오에서 실행 하고 업로드기능 샘플이 되게 하기 까지 나름 이해해야 될 부분이 많습니다.

고수분들은 금방 하시겠지만, ㅎㅎㅎ 저는 3일이나 걸렸습니다. 글을 읽고 기능 구현에 참고 하실 분들께서는 저 처럼 시간 낭비 하시지를 않길 바라고 관련 개발하실때 도움이 되시길 바랍니다.

샘플을 정상적으로 돌려보기 위해서 선행 작업이 몇개 됩니다. 쭉 나열해보고 적용해보겠습니다.

1. https://console.developers.google.com/apis/library 구글 API 관리자에서 프로젝트를 만들고 안드로이드API KEY를 만들어야 합니다.

 

 

반응형

댓글