앱 개발자를 위한 다음 볼만한 동영상 가이드라인
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
다음 볼만한 동영상 채널에 콘텐츠를 삽입할 때 이 가이드라인을 따르세요.
다음 볼만한 동영상 채널에 포함할 콘텐츠 유형
앱의 프로그래매틱 방식 추가를 기존 영화 및 TV 프로그램으로 제한합니다. 클립과 다른 짧은 형식의 콘텐츠를 추가해서는 안 됩니다.
시청이 끝나지 않은 영화 포함
TYPE_MOVIE
를 사용하여 시청이 끝나지 않은 영화를 다음 볼만한 동영상 채널에 추가합니다. 다음 가이드라인에 따라 영화가 시작되었지만 완료되지 않은 경우 영화가 완료되지 않은 것입니다.
- 사용자가 3% 또는 2분 넘게 시청하면(둘 중 더 빠른 타임스탬프) 영화가 시작됩니다.
- 엔딩 크레딧이 시작되면 영화가 끝난 것입니다. 이 경우 다음 볼만한 동영상 채널에 추가하지 마세요. 엔딩 크레딧 자동 감지 기술을 사용하거나 콘텐츠 길이를 기반으로 한 근사치를 사용하여 이 상태를 확인할 수 있습니다.
시청이 끝나지 않은 TV 에피소드 포함
시청이 끝나지 않은 TV 에피소드를 TYPE_TV_EPISODE
를 사용하여 다음 볼만한 동영상 채널에 추가합니다. 다음 가이드라인에 따라 시작되었지만 완료되지 않은 에피소드는 완료되지 않은 것입니다.
- 사용자가 2분 넘게 시청하면 에피소드가 시작됩니다.
- 엔딩 크레딧이 시작되면 에피소드가 종료된 것입니다. 이 경우에는 다음 볼만한 동영상 채널에 추가하지 마세요. 이 상태는 엔딩 크레딧 자동 감지 기술을 사용하여 파악하거나 콘텐츠 길이를 기반으로 한 근사값(예: 에피소드의 남은 분량 3분 미만)을 사용할 수 있습니다.
새 TV 에피소드 및 다음 TV 에피소드 처리
다음 가이드라인에 따라 TYPE_TV_EPISODE
를 사용하여 사용자가 시작한 새 에피소드와 시리즈의 다음 에피소드를 다음 볼만한 동영상 채널에 추가합니다.
- 사용자는 시리즈의 에피소드 중 하나를 2분 이상 또는 소개가 완료된 후 1분 이상 시청하면 시리즈를 시작합니다.
- 사용자가 시리즈를 시작하고 한 에피소드를 마치고 서비스의 다음 에피소드를 서비스에서 사용할 수 있다면
WATCH_NEXT_TYPE_NEXT
를 사용하여 이 다음 에피소드를 다음 볼만한 동영상 채널에 추가합니다.
- 사용자가 시리즈의 현재 에피소드를 모두 시청하고 새 시즌이나 에피소드를 이용할 수 있게 되면
WATCH_NEXT_TYPE_NEW
를 사용하여 이 새 에피소드를 다음 볼만한 동영상 채널에 추가합니다. 사용자가 시리즈를 마지막으로 시청한 후 경과된 시간(예: 1년 이상)과 관계없이 새 에피소드를 추가합니다.
다음 볼만한 동영상 채널에 항목을 추가해야 하는 경우
다음 가이드라인에 따라 시청이 끝나지 않은 콘텐츠 및 이전에 본 시리즈의 새 에피소드를 다음 볼만한 동영상 채널에 추가합니다.
시청이 끝나지 않은 콘텐츠를 추가해야 하는 경우
사용자에게 시청이 끝나지 않은 콘텐츠가 있다면 다음 중 하나가 발생하는 즉시 그 콘텐츠를 다음 볼만한 동영상 채널에 추가합니다.
- 사용자가 Android TV에서 앱을 종료합니다.
- 사용자가 5분 넘게 콘텐츠 재생을 일시중지하거나 중지합니다.
이 시나리오에서는 완료되지 않은 콘텐츠를 최대 5초의 지연 시간으로 즉시 게시합니다. 예를 들어 사용자가 Android TV 앱을 종료하면 시청이 끝나지 않은 항목을 다음 볼만한 동영상 API를 사용하여 5초 이내에 게시합니다.
시청한 위치와 관계없이 다음 볼만한 동영상 API를 사용하여 시청이 끝나지 않은 콘텐츠를 Android TV에 게시합니다. 예를 들어 사용자가 Chrome 브라우저에서 영화를 보고 일시중지하면 Android TV의 앱은 미완성 콘텐츠를 최대 5초의 지연 시간으로 Android TV에 즉시 게시해야 합니다.
새 에피소드를 추가해야 하는 경우
다음 조건을 모두 충족하는 경우 이전에 시청한 시리즈의 새 에피소드를 즉시 추가합니다.
- 서비스에서 새 에피소드를 이용할 수 있습니다.
- 사용자가 이전 에피소드를 이어서 시청합니다.
- 사용자에게 새 에피소드를 시청할 자격이 있습니다.
사용자가 시리즈를 마지막으로 시청한 후 경과된 시간(예: 1년 이상)과 관계없이 새 에피소드를 추가합니다.
콘텐츠 및 UI 업데이트 자격
콘텐츠를 다음 볼만한 동영상 채널에 게시하려면 사용자가 앱 내의 콘텐츠와 상호작용해야 합니다.
같은 TV 시리즈의 에피소드를 두 개 이상 추가하지 마세요. 예를 들어 시청이 끝나지 않은 에피소드와 동일한 시리즈의 새 에피소드를 추가하지 마세요.
항목 하나가 변경될 때 관심 목록 행의 모든 항목을 업데이트해서는 안 됩니다.
마지막 업데이트 이후 사용자가 상호작용한 항목만 업데이트합니다.
다음 볼만한 동영상 항목에 포함할 데이터
각 다음 볼만한 동영상 항목에 다음을 포함합니다.
- 다음 볼만한 동영상 유형
- 마지막 재생 위치
- 시간
- 최근 참여 시간
- 동영상 프로그램 속성: 동영상 프로그램 속성 표에 표시된 필수 속성 외에 모든 동영상 프로그램에 Content ID 속성을 설정해야 합니다. Content ID 속성은 미디어 작업 피드에 제공한 내부 ID와 일치해야 합니다. 이렇게 하면 Android TV에서 애셋을 더 효과적으로 조정하고 사용자에게 신뢰도 높은 기능을 제공합니다.
다음 볼만한 동영상 채널에서 콘텐츠 삭제
사용자가 영화 시청을 마치거나 TV 시리즈에서 시청하지 않은 에피소드가 없으면 콘텐츠를 삭제합니다.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[],null,["# Watch Next guidelines for app developers\n\nFollow these guidelines when you insert content into the\nWatch Next channel.\n\nTypes of content to include in the Watch Next channel\n-----------------------------------------------------\n\nLimit your app's programmatic additions to traditional movies and TV\nshows. Don't add clips and other short-form content.\n\n### Include unfinished movies\n\nAdd unfinished movies to the Watch Next channel using\n[`TYPE_MOVIE`](/training/tv/discovery/video-programs). A movie is unfinished\nif it is started but not finished based on the following guidelines:\n\n- A movie is started if the user watches more than 3% or 2 minutes, whichever timestamp is earlier.\n- A movie is finished if the end credits start. In this case, do *not* add it to the Watch Next channel. You can determine this state using a technology that auto-detects the end credits or use an approximation based on the content length.\n\n### Include unfinished TV episodes\n\nAdd unfinished TV episodes to the Watch Next channel using\n[`TYPE_TV_EPISODE`](/training/tv/discovery/video-programs). An episode is\nunfinished if it is started but not finished based on the following guidelines:\n\n- An episode is started if the user watches more than 2 minutes.\n- An episode is finished if the end credits start. In this case, do *not* add it to the Watch Next channel. You can determine this state using a technology that auto-detects the end credits or use an approximation based on the content length, such as less than 3 minutes remaining in an episode.\n\nHandle new TV episodes and next TV episodes\n-------------------------------------------\n\nAdd new episodes and next episodes of series that the user has started,\nbased on the following guidelines, to the Watch Next channel using\n[`TYPE_TV_EPISODE`](/training/tv/discovery/video-programs):\n\n- The user starts a series if they watch more than 2 minutes, or 1 minute after the introduction completes, of any episode in the series.\n- If the user starts a series and finishes an episode, and the next episode in the series is available in your service, add this next episode to the Watch Next channel using [`WATCH_NEXT_TYPE_NEXT`](/training/tv/discovery/watch-next-programs).\n- If the user is fully caught up on all current episodes in a series and a new season or episode becomes available, add this new episode to the Watch Next channel using [`WATCH_NEXT_TYPE_NEW`](/training/tv/discovery/watch-next-programs). Add the new episode no matter how long it has been since the user last watched the series, such as after a year or more.\n\nWhen to add an item to the Watch Next channel\n---------------------------------------------\n\nAdd unfinished content and new episodes of previously viewed series\nto the Watch Next channel according to the following guidelines.\n\n### When to add unfinished content\n\nWhen a user has an unfinished piece of content, add that content to the Watch\nNext channel immediately when either of the following occur:\n\n- The user exits the app on Android TV.\n- The user pauses or stops playback for a piece of content for more than 5 minutes.\n\nIn these scenarios, publish any unfinished content immediately, with a\nmaximum latency of 5 seconds. For example, when the user exits the\nAndroid TV app, publish any unfinished items using the Watch Next\nAPI within 5 seconds.\n\nPublish any unfinished content to Android TV using the Watch Next API\nregardless of where the viewing occurred. For example, if the user watches a\nmovie in their Chrome browser and pauses it, then the app on the Android TV\nmust publish the unfinished content to the Android TV immediately, with a\nmaximum latency of 5 seconds.\n\n### When to add new episodes\n\nAdd new episodes of a previously watched series\nimmediately when all of the following are true:\n\n- The new episode is available on your service.\n- The user completes the previous episode.\n- The user is entitled to watch the new episode.\n\nAdd the new episode no matter how long it has been since the user last watched\nthe series, such as after a year or more.\n\n### Eligibility of content and UI updates\n\nThe user must interact with the content within your app for the content\nto be eligible to be published to the Watch Next channel.\n\nDon't add more than one episode from the same TV series. For example, don't add\nan unfinished episode and a new episode from the same series.\n\nDon't update all items in the **Play Next** row when one item changes.\n*Only* update the item the user has interacted with since the last update.\n\nWhat data to include for a Watch Next item\n------------------------------------------\n\nInclude the following for each Watch Next item:\n\n- Watch Next type\n- Last playback position\n- Duration\n- Last engagement time\n- Video program attributes: in addition to the required attributes marked in the [video program attributes table](/training/tv/discovery/video-programs#attribute-table), the [Content ID attribute](/reference/androidx/tvprovider/media/tv/PreviewProgram.Builder#setContentId(java.lang.String)) must be set for every video program. The Content ID attribute must match the internal ID you provide in the [Media Actions](https://developers.google.com/actions/media) feed. This lets Android TV reconcile the asset more effectively and provides a high-confidence feature to users.\n\nRemove content from the Watch Next channel\n------------------------------------------\n\nRemove content once the user finishes watching a movie or there\nis no unwatched available episode for a TV series."]]