Cómo agregar programas al canal "Ver a continuación"

El canal Ver a continuación es la segunda fila que aparece en la pantalla principal, después de la fila de apps. El sistema crea y mantiene este canal. Tu app puede agregar programas al canal Ver a continuación: programas que el usuario marcó como interesantes, que dejó de mirar por la mitad o que están relacionados con el contenido que el usuario está mirando (como el siguiente episodio de una serie o la siguiente temporada de un programa).

El canal Ver a continuación tiene algunas restricciones: tu app no puede mover, quitar ni ocultar la fila del canal Ver a continuación.

Pasos

Insertar programas en el canal Ver a continuación es similar a insertar programas en tu propio canal. Consulta las siguientes secciones para obtener detalles específicos sobre la función Mirar a continuación.

Cuando insertes contenido en el canal Ver a continuación, debes seguir estos lineamientos:

Selecciona un tipo de programa

Existen cuatro tipos de programas en el canal "Ver a continuación". Selecciona el tipo adecuado:

Tipo Notas
WATCH_NEXT_TYPE_CONTINUE El usuario detuvo la reproducción mientras miraba el contenido.
WATCH_NEXT_TYPE_NEXT Está disponible el próximo programa de una serie que el usuario está mirando. Por ejemplo, si el usuario está mirando el episodio 3 de una serie, la app puede sugerirle que mire a continuación el episodio 4.
WATCH_NEXT_TYPE_NEW Contenido nuevo disponible directamente relacionado con lo que el usuario está mirando. Por ejemplo, el usuario está mirando el episodio número 5 de una serie y el episodio 6 está disponible para mirarlo.
WATCH_NEXT_TYPE_WATCHLIST Lo inserta el sistema o la app cuando el usuario guarda un programa.

Para obtener más información, consulta Atributos de "Ver a continuación".

Usa el compilador WatchNextProgram

Usa un objeto WatchNextProgram.Builder. Para obtener más información, consulta Atributos de Próximo video.

Kotlin

val builder = WatchNextProgram.Builder()
builder.setType(TvContractCompat.WatchNextPrograms.TYPE_MOVIE)
        .setWatchNextType(TvContractCompat.WatchNextPrograms.WATCH_NEXT_TYPE_CONTINUE)
        .setLastEngagementTimeUtcMillis(time)
        .setTitle("Title")
        .setDescription("Program description")
        .setPosterArtUri(uri)
        .setIntentUri(uri)
        .setInternalProviderId(appProgramId)

val watchNextProgramUri = context.contentResolver
        .insert(TvContractCompat.WatchNextPrograms.CONTENT_URI,
                builder.build().toContentValues())

Java

WatchNextProgram.Builder builder = new WatchNextProgram.Builder();
builder.setType(TvContractCompat.WatchNextPrograms.TYPE_MOVIE)
        .setWatchNextType(TvContractCompat.WatchNextPrograms.WATCH_NEXT_TYPE_CONTINUE)
        .setLastEngagementTimeUtcMillis(time)
        .setTitle("Title")
        .setDescription("Program description")
        .setPosterArtUri(uri)
        .setIntentUri(uri)
        .setInternalProviderId(appProgramId);

Uri watchNextProgramUri = context.getContentResolver()
        .insert(TvContractCompat.WatchNextPrograms.CONTENT_URI, builder.build().toContentValues());

Usa TvContractCompat.buildWatchNextProgramUri(long watchNextProgramId) para crear el objeto Uri que necesitas para actualizar un programa de Ver a continuación.

Cuando el usuario agrega un programa al canal Ver a continuación, el sistema lo copia en la fila. Envía el intent TvContractCompat.ACTION_PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT para notificar a la app que se agregó el programa. La intención incluye dos elementos adicionales: el ID del programa que se copió y el ID del programa creado para el programa en el canal Ver a continuación.