웹 수신자로 콘텐츠를 전송하는 경우 사용자는 항상 발신기 앱에서 콘텐츠를 제어할 수 있어야 합니다.
참고: Google Cast SDK 추가 개발자 서비스 약관에 따라 Cast 미디어 애플리케이션은 SDK에 정의된 Play Control API (미디어 재생 메시지)를 사용하여 웹 수신기에서 미디어 재생을 제어해야 합니다.
발신기 앱은 다음과 같은 전송 기능을 제공해야 합니다.
이러한 영역에서 발신자 앱의 전송 재생 상태 및 컨트롤은 발신기 앱에서 발생하지 않은 경우에도 웹 수신기에서 발생하는 재생 변경사항과 동기화되어야 합니다. 이렇게 하면 다중 발신자 명령어와 기기의 리모컨, 버튼 등에서 들어오는 재생 컨트롤을 모두 제대로 처리할 수 있습니다.
Android
전송 대화상자 제어

미니 컨트롤러

알림 관리

화면 잠금 컨트롤

iOS
전송 대화상자 제어

미니 컨트롤러

Chrome
전송 대화상자 제어

미니 컨트롤러

발신자 볼륨 설정
발신기 앱은 사용자가 발신 기기의 하드웨어 볼륨 버튼 또는 소프트웨어 볼륨 슬라이더를 사용하여 TV나 스피커에서 재생되는 콘텐츠의 볼륨을 제어할 수 있도록 허용해야 합니다. 이러한 컨트롤은 다음 중 하나를 제어합니다.
- Chromecast와 같은 Google Cast 기기의 TV로 전송되는 오디오 음량입니다.
- Google Cast TV, Android TV가 내장된 TV, 스마트 스피커의 실제 TV/스피커 볼륨
필수
A 발신기 앱은 사용자가 발신 기기의 하드웨어 볼륨 버튼이나 소프트웨어 볼륨 슬라이더를 사용하여 TV나 스피커에서 재생되는 콘텐츠의 볼륨을 제어할 수 있도록 허용해야 합니다.
- Android: 하드웨어 버튼과 소프트웨어 볼륨 슬라이더를 모두 지원해야 합니다.
- iOS: 소프트웨어 볼륨 슬라이더는 필수입니다.
- 웹/Chrome: 소프트웨어 볼륨 슬라이더에 대한 지원이 필수입니다.
B 휴대기기에서는 전송 중에 전송하는 동안 소프트웨어 볼륨 슬라이더를 사용할 수 있어야 합니다.
C 발신기 앱의 볼륨 슬라이더는 웹 수신기에 연결된 후 현재 웹 수신기 볼륨과 동기화되고 동기화 상태를 유지해야 합니다.
D 발신기 앱의 볼륨 슬라이더에는 다른 발신자 또는 Chromecast 앱 리모컨의 볼륨 변경사항이 반영되어야 합니다.
E 발신자 앱은 볼륨을 미리 정의된 수준으로 설정해서는 안 되며 사용자가 시작한 볼륨 변경사항만 전달해야 합니다.
F Android만 해당: 하드웨어 버튼을 사용하여 웹 수신기의 볼륨 수준을 변경하는 경우, 하드웨어 볼륨 버튼을 누르면 시각적 볼륨 슬라이더 (왼쪽에 전송 아이콘이 있음)가 표시되어야 합니다. 참고: Android Gingerbread(버전 2.3)의 경우 전송 아이콘이 표시되지 않습니다.
권장사항
- 볼륨 증가:
- Android: 프레임워크는 자동으로 볼륨을 높입니다.
- iOS 및 Chrome: 하드웨어 볼륨 버튼의 경우 오디오/동영상 기기의 경우 웹 수신기 기기의 전체 볼륨 범위의 5% 이하로, 증분의 경우 오디오 전용 기기의 웹 수신기 기기의 전체 볼륨 범위의 2% 와 같도록 설정합니다.
발신자 확장 컨트롤러
발신기 앱은 전송하려는 콘텐츠의 확장된 컨트롤러를 제공해야 합니다.
필수사항
A 콘텐츠 제목 또는 아트워크를 표시하여 전송 중인 콘텐츠를 식별합니다.
B 재생이 시작되기 전에 로드 표시기와 콘텐츠 제목 또는 아트워크를 표시합니다.
C 콘텐츠가 시작되면 웹 수신기 상태를 확인합니다.
D 관련 제어 기능을 제공합니다.
E 탐색바의 왼쪽 끝에 현재 재생 시간을 표시합니다.
오른쪽 끝에서 실시간 스트림이 아닌 경우 스트림의 총 재생 시간을 표시합니다.
F 전송과 관련 없는 컨트롤 숨기기
G 사용자가 펼쳐진 컨트롤러에서 벗어날 때 전송을 연결 해제하거나 중지하지 마세요.
H 사용자가 페이지에서 나갈 때 확장 컨트롤러로 쉽게 돌아갈 수 있는 방법을 제공합니다.
권장사항
- 미디어 스트림의 재생 위치 슬라이더를 제공합니다.
- 기타 의미 있는 콘텐츠 관련 예술작품과 메타데이터를 표시합니다.
- 미디어 스트림의 경과 시간 및 콘텐츠 재생 시간 확인
Android
발신자 콘텐츠 로드 중

수신기 콘텐츠 로드 중

발신자 콘텐츠 재생 중

콘텐츠를 재생하는 웹 수신기

iOS
발신자 콘텐츠 로드 중

웹 수신기 콘텐츠 로드 중

발신자 콘텐츠 재생 중

콘텐츠를 재생하는 웹 수신기

Chrome
발신자 콘텐츠 로드 중

웹 수신기 콘텐츠 로드 중

발신자 콘텐츠 재생 중

콘텐츠를 재생하는 웹 수신기

발신자 미니 컨트롤러
전송 중에 미니 컨트롤러라고 하는 작은 영구 제어 기능이 표시되어야 합니다. 사용자가 현재 콘텐츠 페이지 또는 확장된 컨트롤러에서 발신기 앱의 다른 뷰로 이동할 때 미니 컨트롤러가 표시되어야 합니다. 미니 컨트롤러는 현재 전송에 관한 시각적 알림이며 즉각적인 액세스를 제공합니다.
필수
A 전송 중인 항목을 표시하는 막대나 상자가
발신자 앱의 하단에 표시됩니다. 이러한 컨트롤은 사용자가 앱의 다른 콘텐츠나
섹션을 탐색하는 동안 유지됩니다.
B 컨트롤은 단순하고 전송 중인 항목을 전달할 때 가장 잘 작동합니다.
C 앱의 모든 화면에서 사용할 수 있습니다 (확장 컨트롤러 페이지 제외).
D 콘텐츠 영역을 탭하면 확장 컨트롤러가 열립니다.
E 즉각적인 조치와 관련된 다른 관리 기능을 제공합니다.
권장사항
최상의 사용자 환경을 위해 미니 컨트롤러와 함께 전송 대화상자에 제어 기능을 제공하세요.
Android
발신자 미니 컨트롤러

웹 수신기 콘텐츠 일시중지됨

iOS
발신자 미니 컨트롤러

웹 수신기 콘텐츠 일시중지됨

Chrome
발신자 미니 컨트롤러

웹 수신기 콘텐츠 일시중지됨

발신자 알림
필수 (Android만 해당)
A 상태 표시줄에서 알림에 앱 아이콘 (전송 아이콘 아님)을 사용합니다.
B 전송 중인 콘텐츠를 식별합니다. 예를 들어 콘텐츠 제목 또는 아트워크를 표시합니다.
C 전송 중인 웹 수신기를 확인합니다.
D 기본 콘텐츠 관리 기능을 제공합니다.
E 작업 행에 'X'를 입력하여 전송을 중지하고 웹 수신기와의 연결을 해제합니다.
F 앱 로고, 콘텐츠 제목 또는 아트워크를 탭하면 발신기 앱의 확장 컨트롤러가 열립니다.
Notes
- Android만 해당: iOS 또는 Chrome에서는 알림을 구현할 수 없습니다.
- Android Gingerbread (버전 2.3)에서 알림은 앱 아이콘과 텍스트만 표시하며 재생/일시중지하거나 중지하지 않습니다.
- 자세한 내용은 알림에 미디어 컨트롤 추가를 참고하세요.
Android
발신자 알림 아이콘

콘텐츠를 재생하는 웹 수신기

발신자 알림 관리

콘텐츠를 재생하는 웹 수신기

발신자 잠금 화면
필수사항 (Android만 해당)
A 콘텐츠 제목 또는 아트워크를 사용하여 전송 콘텐츠를 식별합니다.
B 전송 중인 웹 수신기를 확인합니다. 음악 앱에는 필요하지 않습니다.
C 재생 컨트롤을 제공합니다.
D 하드웨어 버튼을 통해 볼륨 컨트롤에 액세스할 수 있는 권한을 제공합니다.
Android 4.4 KitKat 이상 버전에 필요한 기능:
- 앱 아이콘
- 아트워크 (예: 앨범 표지)
- 텍스트에서 전송 중인 콘텐츠 식별 (예: '강철의 눈물')
- 전송 중인 웹 수신기 확인 (예: '거실')
Android 4.3 Jelly Bean에 필수:
- 아트워크 (예: 앨범 표지)
- 텍스트에서 전송 중인 콘텐츠 식별 (예: '강철의 눈물')
- 전송 중인 웹 수신기 확인 (예: '거실')
Notes
- Android만 해당: iOS 또는 Chrome에서는 알림을 구현할 수 없습니다.
- Android 4.1 이상 버전에서는 잠금 화면 컨트롤이 필요합니다.
- 다양한 버전의 Android 운영체제에서 다양한 컨트롤을 사용할 수 있으며 잠금 화면에는 텍스트 필드만 입력할 수 있습니다. 일반적으로 그래픽과 아이콘은 텍스트보다 콘텐츠를 더 즉시 설명합니다.
- 볼륨 제어 하드웨어 버튼은 휴대전화가 잠겨 있을 때 발신기의 볼륨을 조정해야 합니다.
- 컨트롤은 프레임워크 구성요소
MediaSession
또는MediaSessionCompat
(버전 4.4 및 4.3) 또는Notification
(5.0 이상)를 사용해야 합니다.
Android
발신자 잠금 화면 제어

콘텐츠를 재생하는 웹 수신기

전송이 재개됨
연결된 발신자 앱은 암시적 연결 해제 (예: 네트워크 연결 해제, 기기 절전 모드 또는 배터리 소진) 후 연결 상태를 복원해야 합니다.
필수
A 발신자 앱이 암시적으로 연결 해제 (사용자가 전송을 명시적으로 중지하거나 연결을 해제하지 않은 경우)한 경우 전송 콘텐츠가 웹 수신기에서 계속 재생되어야 합니다. 앱 또는 연결이 다시 시작되면 웹 수신기 세션이 여전히 최신 상태인 한 발신기 앱이 웹 수신기에 대한 연결을 복원해야 합니다.
B 전송 버튼이 연결된 상태로 복원되어야 합니다.
C 발신자가 다시 연결되기 전에 사용자가 전송 버튼을 탭하면
웹 수신기 기기 목록이 표시됩니다. 사용자가 현재 전송 중인 웹 수신기를 선택하면 미니 컨트롤러 또는 확장된 컨트롤러가 발신자 앱에 표시됩니다.
참고
정전 또는 기타 맥락에서 벗어난 중단으로 인해 웹 수신기 앱이 연결 해제되고 실행이 중지될 수도 있습니다. 이는 발신자가 전송을 중지한 대로 일반적인 세션 종료로 처리됩니다.
Android
앱 선택

콘텐츠를 재생하는 웹 수신기

전송 연결 복원됨

콘텐츠를 재생하는 웹 수신기

iOS
앱 선택

콘텐츠를 재생하는 웹 수신기

전송 연결 복원됨

콘텐츠를 재생하는 웹 수신기

전송이 중지됨
TV로 전송되는 콘텐츠는 사용자가 전송 중지를 선택하거나 발신자가 새로 전송할 때까지 계속 재생됩니다. 여러 발신자가 동일한 웹 수신기에 연결되면 전송 대화상자에 전송 중지 버튼 대신 연결 해제 버튼이 있어야 합니다.
필수
A 여러 수신자가 웹 수신기에 연결된 경우
1개의 발신자 앱에서 '전송 중지'를 눌러도 웹 수신기에는 아무 작업도 발생하지 않으며, 해당 발신자 기기에서의 전송 제어 및 알림이 삭제됩니다. 남아 있는 연결된 발신자 기기는 전송 제어 기능을 통해 계속 연결할 수 있습니다.
B 발신자 앱이 암시적으로 연결 해제되는 경우 (예: 발신자 기기 배터리가 종료되거나 웹 수신기에 대한 발신자 기기 네트워크 연결이 끊어짐) 웹 수신기에 대해 아무 조치도 취하지 않으며 발신자 기기에서 전송 제어 및 알림을 삭제합니다. 발신기 앱은 발신기 앱이 다시 열릴 때 암시적 연결 끊김을 추적하고 웹 수신기에 다시 연결을 시도해야 합니다.
Android
전송 대화상자, 연결 해제 버튼

콘텐츠를 재생하는 웹 수신기

iOS
전송 대화상자, 연결 해제 버튼

콘텐츠를 재생하는 웹 수신기

Chrome
전송 대화상자, 연결 해제 버튼

콘텐츠를 재생하는 웹 수신기

이 설계 가이드에 사용된 이미지는 저작권 또는 크리에이티브 커먼즈 라이선스에 따라 공유되는 Blender Foundation에서 제공합니다.
- Elephant's Dream: (c) 저작권 2006, Blender Foundation / Netherlands Media Art Institute / www.elephantsdream.org
- Sintel: (c) 저작권 Blender Foundation | www.sintel.org
- Tears of Steel: (CC) Blender Foundation | mango.blender.org
- Big Buck Bunny: (c) 2008년 저작권, Blender Foundation / www.bigbuckbunny.org