Audio program attributes

Attributes for audio programs depend on the type of the content. The program type tells the system what metadata to expect so that the UI can be filled in appropriately. Audio programs can be one of these types:

Use PreviewProgram.Builder to build a program. You can read more about possible values for each field in the Java documentation for each setter on the builder.

The following example shows how to use PreviewProgram.Builder:

PreviewProgram program = new PreviewProgram.Builder()
                    .setChannelId(channelId)
                    .setTitle(clip.getTitle())
                    .setDescription(clip.getDescription())
                    .setType(TvContractCompat.PreviewPrograms.TYPE_ALBUM)
                    // Set required attributes
                    .build();

The following table shows the attributes that can be assigned to each type of audio program, and links to the corresponding setter in PreviewProgram.Builder. Attributes marked are required; those marked (✔) are optional.

AttributeTrackAlbumArtistPlaylistStation
Author (✔) (✔)(✔)
Availability (✔)(✔)(✔)(✔)(✔)
Channel ID
Content ID (✔)(✔)(✔)(✔)(✔)
Duration
Genre (✔)(✔)(✔)(✔)(✔)
Intent URI
Interaction Count (✔) (✔)(✔)
Interaction Type (✔) (✔)(✔)
Internal Provider ID (✔)(✔)(✔)(✔)(✔)
Live (✔)
Logo URI (*) (✔)
Logo Content Description (*) (✔)
Offer Price (✔)(✔)(✔)(✔) (✔)
Poster Art Aspect Ratio
Poster Art URI
Preview Audio URI (✔)(✔)(✔)(✔)(✔)
Preview Video URI (✔)(✔)(✔)(✔)(✔)
Release Date (✔)(✔)
Short Description (✔)(✔)(✔)(✔)(✔)
Starting Price (✔)(✔)(✔)(✔)(✔)
Thumbnail Aspect Ratio (✔)(✔)(✔)(✔)(✔)
Thumbnail URI (✔)(✔)(✔) (✔)(✔)
Title
Video Height (✔) (✔)(✔)(✔) (✔)
Video Width (✔)(✔)(✔)(✔) (✔)
Weight (✔)(✔)(✔)(✔)(✔)