Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Kênh Watch Next là hàng thứ hai xuất hiện trên màn hình chính, sau
hàng ứng dụng. Hệ thống tạo ra và duy trì kênh này. Ứng dụng của bạn có thể thêm
chương trình lên kênh Watch Next: những chương trình mà người dùng đã đánh dấu là
thú vị, đã dừng xem ở giữa hoặc có liên quan đến nội dung
người dùng đang xem (như tập tiếp theo trong loạt phim hoặc phần tiếp theo của
hiển thị).
Kênh Watch Next có một số hạn chế: ứng dụng của bạn không thể di chuyển, xoá hoặc
ẩn hàng của kênh Watch Next.
Các bước
Cách chèn các chương trình vào kênh Watch Next tương tự như
chèn chương trình vào kênh riêng.
Hãy xem các phần sau đây để biết thông tin cụ thể về tính năng Watch Next.
Đang xuất bản lên kênh Watch Next trên Google TV (hiển thị là "Continue" (Tiếp tục)
xem") cần có sự phê duyệt trước của Google thông qua một quy trình chứng nhận và
sử dụng quy trình xử lý phía máy chủ để sắp xếp chương trình dựa trên thuộc tính của chúng.
Để bắt đầu quy trình chứng nhận, vui lòng
gửi biểu mẫu được liên kết này.
Khi chèn nội dung vào kênh Watch Next, bạn phải tuân theo các nguyên tắc sau:
Có 4 loại chương trình Watch Next. Chọn loại phù hợp:
Loại
Ghi chú
WATCH_NEXT_TYPE_CONTINUE
Người dùng đã dừng lại trong khi xem nội dung.
WATCH_NEXT_TYPE_NEXT
Chương trình có sẵn tiếp theo trong chuỗi chương trình mà người dùng sẽ xem
có sẵn. Ví dụ: nếu người dùng đang xem tập 3 của một chương trình dài tập, ứng dụng có thể đề xuất họ xem tập 4 tiếp theo.
WATCH_NEXT_TYPE_NEW
Hiện đã có nội dung mới rõ ràng tuân thủ những gì người dùng đang xem. Ví dụ: người dùng đang xem tập số 5 của chương trình dài tập và tập 6 có sẵn để xem.
WATCH_NEXT_TYPE_WATCHLIST
Do hệ thống hoặc ứng dụng chèn khi người dùng lưu một chương trình.
Sử dụng TvContractCompat.buildWatchNextProgramUri(long watchNextProgramId) để
tạo Uri bạn cần để cập nhật chương trình Watch Next.
Khi người dùng thêm một chương trình vào kênh Watch Next, hệ thống sẽ sao chép
vào hàng. Phương thức này sẽ gửi ý định
TvContractCompat.ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT để thông báo cho ứng dụng
chương trình đó đã được thêm vào. Ý định bao gồm 2 phần bổ sung: mã chương trình
đã được sao chép và mã chương trình được tạo cho chương trình đó trong Watch Next
của bạn.
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-07-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-27 UTC."],[],[],null,["# Add programs to the Watch Next channel\n\nThe Watch Next channel is the second row that appears in the home screen, after\nthe apps row. The system creates and maintains this channel. Your app can add\nprograms to the Watch Next channel: programs that the user marked as\ninteresting, stopped watching in the middle, or that are related to the content\nthe user is watching (like the next episode in a series or next season of a\nshow).\n| **Note:** On the home screen, the Watch Next channel has the label **Play Next** . However, the Android classes used to manage the Watch Next channel are [`WatchNextProgram`](/reference/androidx/tvprovider/media/tv/WatchNextProgram) and [`WatchNextPrograms`](/reference/android/media/tv/TvContract.WatchNextPrograms). They have methods and constants with the stem \"watchnext\".\n\nThe Watch Next channel has some constraints: your app cannot move, remove, or\nhide the Watch Next channel's row.\n\nSteps\n-----\n\nInserting programs into the Watch Next channel is similar to\n[inserting programs into your own channel](/training/tv/discovery/recommendations-channel#add-programs).\nSee the following sections for details specific to Watch Next.\n\nPublishing to the Watch Next channel on Google TV (displayed as \"Continue\nwatching\") requires prior approval by Google through a certification process and\nuses server-side processing to sort programs based on their attributes.\nTo start the certification process, please\nsubmit this [linked form](https://docs.google.com/forms/d/e/1FAIpQLSeaNhHjDNM8osXPgkXeUQMSl5CntaEw0EeGYHIAc5jxUhQuHg/viewform).\n\nWhen inserting content into the Watch Next channel, you must follow these guidelines:\n\n- [Watch Next guidelines for app developers](/training/tv/discovery/guidelines-app-developers)\n- [Watch Next guidelines for TV providers](/training/tv/discovery/guidelines-tv-providers)\n\n### Select a type of program\n\nThere are four types of Watch Next programs. Select the appropriate type:\n\n| Type | Notes |\n|-----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `WATCH_NEXT_TYPE_CONTINUE` | The user stopped while watching content. |\n| `WATCH_NEXT_TYPE_NEXT` | The next available program in a series the user is watching is available. For example, if the user is watching episode 3 of a series, the app can suggest that they watch episode 4 next. |\n| `WATCH_NEXT_TYPE_NEW` | New content that clearly follows what the user is watching is now available. For example, the user is watching episode number 5 from a series and episode 6 becomes available for watching. |\n| `WATCH_NEXT_TYPE_WATCHLIST` | Inserted by the system or the app when the user saves a program. |\n\nFor more information, see [Watch Next attributes](/training/tv/discovery/watch-next-programs).\n\n### Use the WatchNextProgram builder\n\nUse a `WatchNextProgram.Builder`. For more information, see\n[Watch Next attributes](/training/tv/discovery/watch-next-programs). \n\n### Kotlin\n\n```kotlin\nval builder = WatchNextProgram.Builder()\nbuilder.setType(TvContractCompat.WatchNextPrograms.TYPE_MOVIE)\n .setWatchNextType(TvContractCompat.WatchNextPrograms.WATCH_NEXT_TYPE_CONTINUE)\n .setLastEngagementTimeUtcMillis(time)\n .setTitle(\"Title\")\n .setDescription(\"Program description\")\n .setPosterArtUri(uri)\n .setIntentUri(uri)\n .setInternalProviderId(appProgramId)\n\nval watchNextProgramUri = context.contentResolver\n .insert(TvContractCompat.WatchNextPrograms.CONTENT_URI,\n builder.build().toContentValues())\n```\n\n### Java\n\n```java\nWatchNextProgram.Builder builder = new WatchNextProgram.Builder();\nbuilder.setType(TvContractCompat.WatchNextPrograms.TYPE_MOVIE)\n .setWatchNextType(TvContractCompat.WatchNextPrograms.WATCH_NEXT_TYPE_CONTINUE)\n .setLastEngagementTimeUtcMillis(time)\n .setTitle(\"Title\")\n .setDescription(\"Program description\")\n .setPosterArtUri(uri)\n .setIntentUri(uri)\n .setInternalProviderId(appProgramId);\n\nUri watchNextProgramUri = context.getContentResolver()\n .insert(TvContractCompat.WatchNextPrograms.CONTENT_URI, builder.build().toContentValues());\n```\n\nUse `TvContractCompat.buildWatchNextProgramUri(long watchNextProgramId)` to\ncreate the `Uri` you need to update a Watch Next program.\n\nWhen the user adds a program to the Watch Next channel, the system copies the\nprogram to the row. It sends the intent\n`TvContractCompat.ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT` to notify the app\nthat the program has been added. The intent includes two extras: the program ID\nthat was copied and the program ID created for the program in the Watch Next\nchannel."]]