Korea Blog
구글 캐스트를 지원하는 앱 개발하기
Tuesday, May 13, 2014
2014년 5월 14일, 많은 분들이 기다리고 계셨던 크롬 캐스트가 한국에 정식 출시되었습니다.
크롬 캐스트는 구글 캐스트 기술이 적용된 첫 번째 디바이스 입니다. 구글 캐스트는 사용자들이 비디오와 같은 콘텐츠를 폰, 태블릿, 노트북과 같은 작은 화면에서 TV 와 같은 큰 화면으로 손쉽게 재생할 수 있도록 지원하는 구글의 멀티스크린 기술입니다. 크롬 캐스트 출시를 기념하며, 구글 캐스트 기술에 관한 전반적인 내용에 관해 이야기 해보려고 합니다.
구글 캐스트 개요
구글 캐스트는 크게 센더와 리시버 두 가지 요소로 구성됩니다. 센더 앱은 리모컨 역할 및 수행하며,
폰, 태블릿, PC 등이 센더 앱을 실행 하는 센더 디바이스가 될 수 있습니다.
각 플랫폼에 맞게 제공되는 구글 캐스트 API 를 이용하여 리서버 앱을 찾고 데이터를 주고 받는 센더 앱을 개발하실 수 있습니다. 그리고 물론 여러분의 콘텐츠를 큰 화면으로 캐스팅 하실 수도 있습니다.
크롬 캐스트와 같은 리시버 디바이스 위에서는 리시버 앱이 동작합니다. 리시버 앱은 하나의 HTML, CSS, 자바스크립트 파일로 이루어진 웹 앱입니다. 인터넷 프로토콜을 통해 비디오를 재생하는데 최적화 되어 있으며, 개발자 여러분은 함께 제공되는 리시버 API 를 이용하여 센더와 리시버 앱이 서로 주고 받을 수 있는 커스텀한 메세지를 추가하거나 라이센싱 서버를 통해야 하는 콘텐츠 혹은 가변 비트스트림(Adaptive Bitrate Streaming)을 지원하는 미디어 포맷등을 추가로 지원하실 수도 있습니다.
미디어 콘텐츠는 인터넷 프로토콜을 통해 서버에서 직접 리시버 앱으로 전송되며, 사용자는 TV 로 비디오를 감상하면서도, 평소와 다름없이 휴대폰이나 태블릿을 사용할 수 있습니다. 비디오를 자유롭게 컨트롤 하면서도, 유튜브를 통해 또다른 동영상을 검색해서 TV 로 캐스팅 할 수도 있고,
아니면 아예
이메일을 확인하거나 게임과 같은 다른 종류의 작업도 문제없이 수행할 수 있습니다.
그럼 실제로 구글 캐스트를 지원하는 앱을 만들기 위해서는 어떻게 시작해야하는지 조금 더 자세히 알아보도록 하겠습니다.
개발 시작하기
개발자 분들이 구글 캐스트를 지원하는 앱을 만드실 수 있도록 각 플랫폼에 맞는
구글 캐스트 SDK
가 제공됩니다. API 라이브러리와 개발 관련 문서 그리고 샌더와 리시버 어플리케이션
샘플 코드
가 함께 제공되고 있습니다. 개발자 프리뷰를 거치며, 많은 변화가 있었기 때문에, 이미 구글 캐스트 기술에 익숙한 개발자 분들이라도 다시 한번 개발자 문서를 확인하시는 것을 권장드립니다.
구성 요소
앞에서 설명 드린 것 처럼 캐스트 앱은 크게 두 가지 구성요소로 이루어 집니다. 센더 어플리케이션은 안드로이드, iOS, 크롬 플랫폼 상에서 동작합니다. 각각의 플랫폼 별로 다음과 같은 형식으로 API 가 제공되고 있습니다.
Android API
- 안드로이드 서포트 라이버리리와 구글 플레이 서비스 API 형태로 제공됩니다. 보다 자세한 내용은 개발자 사이트의
Android Sender Applications
항목을 참고 하세요.
iOS API
- 독립적인 API 라이브러리 형태로 제공됩니다. 보다 자세한 내용은 개발자 사이트의
iOS Sender Applications
항목을 참고 하세요.
Chrome API
- 크롬의 구글 캐스트 확장(Extension) 을 설치해야 합니다. 실제 앱 개발을 위해서는 자바 스크립트 라이브러리가 제공되며 구글 서버에 호스팅 되어 있습니다. 보다 자세한 개발자 사이트의
Chrome Sender Applications
내용은 항목을 참고 하세요.
리시버 어플리케이션은 센더와 리시버 디바이스 같의 커뮤니케이션을 처리하며 크게 세 가지 종류의 리시버 앱이 지원됩니다.
Default Media Receiver - 구글이 직접 호스팅하는 기본적인 미디어 리시버 앱으로 mp4, mp3, mov, jpeg 과 같은 대표적인 미디어 포맷을 지원합니다. 리시버 앱을 직접 구현할 필요 없이 API 호출을 통해 콘텐츠를 캐스트 리시버 장치에 캐스팅 할 수 있지만, UI 를 변경하거나 커스텀 메세지 기능등을 활용할 수는 없습니다.
Styled Media Receiver - Default Media Receiver 와 동일하게 기본적인 미디어 포맷만을 지원하지만, 여러분이 호스팅 하는 CSS 스타일 파일을 적용하여 리시버 앱의 모습을 다른 형태로 변경할 수 있습니다. 보다 자세한 내용은 개발자 문서의
Styled Media Receiver
항목을 참고 하시기 바랍니다.
Custom Media Receiver - 개발자 분이 직접 호스팅하는 리시버 앱 입니다. 리시버 앱 UI 를 원하는 형태로 변경할 수 있고, 커스텀 메세지를 정의하고 이를 처리하기 위한 로직을 구현하실 수 있습니다. 함께 제공되는
미디어 플레이어 라이브러리
를 이용하여 라이센싱 서버를 거치는 미디어 혹은 어답티브 스트리밍이 적용된 콘텐츠등 추가적인 미디어 포맷을 지원할 수 있습니다. 보다 자세한 내용은 개발자 문서의
Custom receiver
항목을 참고 하시기 바랍니다.
특정 미디어 포맷은 Custom Media Receiver 를 구현해야지만 지원할 수 있기 때문에, 어떤 리시버 앱을 활용해야 하는지는 여러분의 어플리케이션이 지원해야하는
미디어 타입
에 따라 달라 질 수 있습니다.
개발 환경 설정
구글 캐스트 어플리케이션을 개발하기 전에 몇 가지 사전 작업이 필요합니다.
Chromecast Setup
과정을 통해 개발자 여러분의 크롬 캐스트 디바이스를 설치 합니다.
폰과 같은 센더 디바이스에서 크롬 캐스트 앱을 실행 한 후, 안내에 따라 캐스트 디바이스를 설정 합니다.
개발용으로 크롬 디바이스를 사용하기 위해서는 개인 정보 보호 정책에서 ‘업데이트 확인 시 크롬 캐스트 등록 번호 보내기' 옵션을 선택합니다.
UX 가이드라인
내용을 한 번 확인 합니다. 다른 캐스트 지원 앱과 더불어 사용자에게 동일한 사용자 경험을 제공하기 위해 꼭 기억해야할 원칙들이 소개되어 있습니다.
API 라이브러리와 샘플 앱을
다운로드
합니다.
개발자 문서의 등록 항목
을 참고하여, 구글 캐스트 개발자 콘솔을 통해 개발자 계정을 생성한 후, 여러분의 캐스트 어플리케이션을 등록 합니다.
API 호출 시 사용할 수 있는 리시버 앱 ID 를 발급 받습니다.
이제 모든 준비가 완료되었습니다. 구글 캐스트를 지원하는 여러분 만의 앱을 만들어 보시기 바랍니다.
구글 캐스트 앱 디자인하기
구글 캐스트 기능을 활용하는 것은 기존 앱을 개발하는 것과는 다른 새로운 경험이 될 수 있습니다. 사용자는 센더와 리시버 라는 두 요소 간의 상호작용을 통해 구글 캐스팅 기술을 활용하게 되며, 사용자가 혼란 스럽지 않고 플랫폼 전체적으로 동일한 사용자 경험을 누릴 수 있도록 UX 를 설계할 때도 주의를 기울여야 합니다. 개발자 분들을 위하여
UX 가이드라인
과
디자인 체크리스트
문서가 제공하고 있습니다.
특히, 디자인 체크 리스트 문서는 구글 캐스트 기술을 통해 센더 앱에서 리시버 앱을 발견하고 콘텐츠를 재생하고 컨트롤 하기 까지 각각의 단계 마다 어떤 식으로 앱이 동작해야하는지에 관해 구체적인 스크린샷과 함께 자세히 설명하고 있습니다. 구글 캐스팅 기능이 적용된 앱을 만드시기 전에는 꼭 한번 참고해보시기 바랍니다.
그럼 개발자 분들의 멋진 구글 캐스트 앱을 만나보길 기대하고 있겠습니다. 해피 캐스팅!
No comments :
Post a Comment
ラベル
ad
AdMob
admob_sdk
Advanced Power Searching
Android
Android App Quality
android back button
Android back end
Android navigation
Android Player API
android server
android up button
androidL
androidtv
androidwear
App Translate Service
Audio Focus
Chrome
Chromecast
Code-in 2012
Core App Quality Guidelines
Daydream
design
designing for Tablets
designsprint
dialog
Drive SDK
Game Developers Conference
GCi
GCi 참가자
GDA
GDC
gdg
gdgkorea
Go
Google Cast
Google Code-in
Google Play
Google Play 스토어
Google Search
Google Summer of Code
Google+ Sign-In
Google+ Sign-In Bootcamps
Google+ 로그인
Google+ 로그인 부트캠프
googleanalytics
googleio
GooglePlay #AndroidDevStory #PlayStore #MaterialDesign #AndroidStudio #DeveloperConsole
GSOC
hackathon
HackFair 출품작
In-app Billing
io
io2014
ioapp
iobytes
ioextended
IRC Talk
IRC 서버
java7
kitkat
launch
Marshmallow
materialdesign
mobile ad
mobile_ads_sdk
multiscreen
NaCl
Native YouTube Player API
NRRN 사용 제한
Power Searching
product launch
SD 카드에 앱 설치
SecureKeyFactory
ux
webview
YouTube
YouTube Android Player API
YouTube API
YouTube API 3.0
YouTube API Update RSS Feed
광고
구글 HackFair
구글 Summer of Code
구글 개발자 사이트 홍보
구글 개발자 아카데미
구글 개발자 온라인 강좌
구글 검색
구글 고급 파워 서치
구글 드라이브 앱
구글 부트캠프
구글 아카데미
구글 코드인
구글 플러스 로그인
구글 핵페어
구글로 로그인하기
네이티브 클라이언트
데이드림
멀티 모바일
멀티 플랫폼
모바일 광고
수익화
스마트 브라우저
안드로이드
안드로이드 4.2
안드로이드 Back 버튼
안드로이드 Up 버튼
안드로이드 개인 정보 보호 정책
안드로이드 네비게이션
안드로이드 데이드림
안드로이드 디자인
안드로이드 방향탐색
안드로이드 보안
안드로이드 사용자 데이터
안드로이드 서버 백엔드
안드로이드 앱 품질
안드로이드 원격 제어
안드로이드 태블릿 디자인
안드로이드 현지화
안드로이드 화면 보호기
애드몹
애플리케이션 SD카드 설치
애플리케이션 개발 주민등록번호 사용 제한
애플리케이션 외부 저장 장치
앱 품질 체크리스트
오픈 소스
오픈소스 프로그램
웹 DMB
유튜브
유튜브 API
유튜브 API 3.0
유튜브 API 업데이트
유튜브 모바일
유튜브 안드로이드 플레이어 API
인앱 결제
인터넷상 주민등록번호 수집 이용 제한
주민등록번호 사용제한
추천이미지
출시
크롬브라우저
태블릿 디자인
태블릿용 앱
파워서치
한국 구글 개발자
한국 구글 개발자 사이트
핵심 앱 품질 가이드라인
핵심 태블릿 앱 품질 체크리스트
핵페어
핵페어 출품작
ブログ アーカイブ
2016
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
Google Developers YouTube의 새로운 비디오 시리즈를 소개합니다
구글 I/O 2014 : 당신만의 스케줄을 계획해 보세요
한국 Google Developers Group의 4월 활동 이야기
구글 캐스트를 지원하는 앱 개발하기
[Mobile Ad] 한국을 포함한 더 많은 나라에서 new AdMob 출시
GDG WebTech 소식 최신 업데이트
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
March
February
January
2011
December
November
Feed
No comments :
Post a Comment