diff --git a/api/current.txt b/api/current.txt index 18e4adfc70e6f..45349cfab04c9 100644 --- a/api/current.txt +++ b/api/current.txt @@ -23773,6 +23773,7 @@ package android.media.tv { public static final class TvContract.Programs implements android.media.tv.TvContract.BaseTvColumns { field public static final java.lang.String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final java.lang.String COLUMN_AUTHOR = "author"; field public static final java.lang.String COLUMN_BROADCAST_GENRE = "broadcast_genre"; field public static final java.lang.String COLUMN_CANONICAL_GENRE = "canonical_genre"; field public static final java.lang.String COLUMN_CHANNEL_ID = "channel_id"; @@ -23781,6 +23782,8 @@ package android.media.tv { field public static final java.lang.String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; field public static final deprecated java.lang.String COLUMN_EPISODE_NUMBER = "episode_number"; field public static final java.lang.String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final java.lang.String COLUMN_INTERACTION_COUNT = "interaction_count"; + field public static final java.lang.String COLUMN_INTERACTION_TYPE = "interaction_type"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; @@ -23795,6 +23798,8 @@ package android.media.tv { field public static final java.lang.String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; field public static final java.lang.String COLUMN_PREVIEW_WEIGHT = "preview_weight"; field public static final java.lang.String COLUMN_RECORDING_PROHIBITED = "recording_prohibited"; + field public static final java.lang.String COLUMN_REVIEW_RATING = "review_rating"; + field public static final java.lang.String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; field public static final java.lang.String COLUMN_SEARCHABLE = "searchable"; field public static final java.lang.String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; field public static final deprecated java.lang.String COLUMN_SEASON_NUMBER = "season_number"; @@ -23809,6 +23814,16 @@ package android.media.tv { field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/program"; field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/program"; field public static final android.net.Uri CONTENT_URI; + field public static final java.lang.String INTERACTION_TYPE_FANS = "INTERACTION_TYPE_FANS"; + field public static final java.lang.String INTERACTION_TYPE_FOLLOWERS = "INTERACTION_TYPE_FOLLOWERS"; + field public static final java.lang.String INTERACTION_TYPE_LIKES = "INTERACTION_TYPE_LIKES"; + field public static final java.lang.String INTERACTION_TYPE_LISTENS = "INTERACTION_TYPE_LISTENS"; + field public static final java.lang.String INTERACTION_TYPE_THUMBS = "INTERACTION_TYPE_THUMBS"; + field public static final java.lang.String INTERACTION_TYPE_VIEWERS = "INTERACTION_TYPE_VIEWERS"; + field public static final java.lang.String INTERACTION_TYPE_VIEWS = "INTERACTION_TYPE_VIEWS"; + field public static final java.lang.String REVIEW_RATING_STYLE_PERCENTAGE = "REVIEW_RATING_STYLE_PERCENTAGE"; + field public static final java.lang.String REVIEW_RATING_STYLE_STARS = "REVIEW_RATING_STYLE_STARS"; + field public static final java.lang.String REVIEW_RATING_STYLE_THUMPS_UP_DOWN = "REVIEW_RATING_STYLE_THUMPS_UP_DOWN"; } public static final class TvContract.Programs.Genres { diff --git a/api/system-current.txt b/api/system-current.txt index a192c9265be3c..11842b629c481 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -25516,6 +25516,7 @@ package android.media.tv { public static final class TvContract.Programs implements android.media.tv.TvContract.BaseTvColumns { field public static final java.lang.String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final java.lang.String COLUMN_AUTHOR = "author"; field public static final java.lang.String COLUMN_BROADCAST_GENRE = "broadcast_genre"; field public static final java.lang.String COLUMN_CANONICAL_GENRE = "canonical_genre"; field public static final java.lang.String COLUMN_CHANNEL_ID = "channel_id"; @@ -25524,6 +25525,8 @@ package android.media.tv { field public static final java.lang.String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; field public static final deprecated java.lang.String COLUMN_EPISODE_NUMBER = "episode_number"; field public static final java.lang.String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final java.lang.String COLUMN_INTERACTION_COUNT = "interaction_count"; + field public static final java.lang.String COLUMN_INTERACTION_TYPE = "interaction_type"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; @@ -25538,6 +25541,8 @@ package android.media.tv { field public static final java.lang.String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; field public static final java.lang.String COLUMN_PREVIEW_WEIGHT = "preview_weight"; field public static final java.lang.String COLUMN_RECORDING_PROHIBITED = "recording_prohibited"; + field public static final java.lang.String COLUMN_REVIEW_RATING = "review_rating"; + field public static final java.lang.String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; field public static final java.lang.String COLUMN_SEARCHABLE = "searchable"; field public static final java.lang.String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; field public static final deprecated java.lang.String COLUMN_SEASON_NUMBER = "season_number"; @@ -25553,6 +25558,16 @@ package android.media.tv { field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/program"; field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/program"; field public static final android.net.Uri CONTENT_URI; + field public static final java.lang.String INTERACTION_TYPE_FANS = "INTERACTION_TYPE_FANS"; + field public static final java.lang.String INTERACTION_TYPE_FOLLOWERS = "INTERACTION_TYPE_FOLLOWERS"; + field public static final java.lang.String INTERACTION_TYPE_LIKES = "INTERACTION_TYPE_LIKES"; + field public static final java.lang.String INTERACTION_TYPE_LISTENS = "INTERACTION_TYPE_LISTENS"; + field public static final java.lang.String INTERACTION_TYPE_THUMBS = "INTERACTION_TYPE_THUMBS"; + field public static final java.lang.String INTERACTION_TYPE_VIEWERS = "INTERACTION_TYPE_VIEWERS"; + field public static final java.lang.String INTERACTION_TYPE_VIEWS = "INTERACTION_TYPE_VIEWS"; + field public static final java.lang.String REVIEW_RATING_STYLE_PERCENTAGE = "REVIEW_RATING_STYLE_PERCENTAGE"; + field public static final java.lang.String REVIEW_RATING_STYLE_STARS = "REVIEW_RATING_STYLE_STARS"; + field public static final java.lang.String REVIEW_RATING_STYLE_THUMPS_UP_DOWN = "REVIEW_RATING_STYLE_THUMPS_UP_DOWN"; } public static final class TvContract.Programs.Genres { diff --git a/api/test-current.txt b/api/test-current.txt index 47440e6637fbb..3401b8b1594d0 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -23863,6 +23863,7 @@ package android.media.tv { public static final class TvContract.Programs implements android.media.tv.TvContract.BaseTvColumns { field public static final java.lang.String COLUMN_AUDIO_LANGUAGE = "audio_language"; + field public static final java.lang.String COLUMN_AUTHOR = "author"; field public static final java.lang.String COLUMN_BROADCAST_GENRE = "broadcast_genre"; field public static final java.lang.String COLUMN_CANONICAL_GENRE = "canonical_genre"; field public static final java.lang.String COLUMN_CHANNEL_ID = "channel_id"; @@ -23871,6 +23872,8 @@ package android.media.tv { field public static final java.lang.String COLUMN_EPISODE_DISPLAY_NUMBER = "episode_display_number"; field public static final deprecated java.lang.String COLUMN_EPISODE_NUMBER = "episode_number"; field public static final java.lang.String COLUMN_EPISODE_TITLE = "episode_title"; + field public static final java.lang.String COLUMN_INTERACTION_COUNT = "interaction_count"; + field public static final java.lang.String COLUMN_INTERACTION_TYPE = "interaction_type"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_DATA = "internal_provider_data"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_FLAG1 = "internal_provider_flag1"; field public static final java.lang.String COLUMN_INTERNAL_PROVIDER_FLAG2 = "internal_provider_flag2"; @@ -23885,6 +23888,8 @@ package android.media.tv { field public static final java.lang.String COLUMN_PREVIEW_VIDEO_URI = "preview_video_uri"; field public static final java.lang.String COLUMN_PREVIEW_WEIGHT = "preview_weight"; field public static final java.lang.String COLUMN_RECORDING_PROHIBITED = "recording_prohibited"; + field public static final java.lang.String COLUMN_REVIEW_RATING = "review_rating"; + field public static final java.lang.String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; field public static final java.lang.String COLUMN_SEARCHABLE = "searchable"; field public static final java.lang.String COLUMN_SEASON_DISPLAY_NUMBER = "season_display_number"; field public static final deprecated java.lang.String COLUMN_SEASON_NUMBER = "season_number"; @@ -23899,6 +23904,16 @@ package android.media.tv { field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/program"; field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/program"; field public static final android.net.Uri CONTENT_URI; + field public static final java.lang.String INTERACTION_TYPE_FANS = "INTERACTION_TYPE_FANS"; + field public static final java.lang.String INTERACTION_TYPE_FOLLOWERS = "INTERACTION_TYPE_FOLLOWERS"; + field public static final java.lang.String INTERACTION_TYPE_LIKES = "INTERACTION_TYPE_LIKES"; + field public static final java.lang.String INTERACTION_TYPE_LISTENS = "INTERACTION_TYPE_LISTENS"; + field public static final java.lang.String INTERACTION_TYPE_THUMBS = "INTERACTION_TYPE_THUMBS"; + field public static final java.lang.String INTERACTION_TYPE_VIEWERS = "INTERACTION_TYPE_VIEWERS"; + field public static final java.lang.String INTERACTION_TYPE_VIEWS = "INTERACTION_TYPE_VIEWS"; + field public static final java.lang.String REVIEW_RATING_STYLE_PERCENTAGE = "REVIEW_RATING_STYLE_PERCENTAGE"; + field public static final java.lang.String REVIEW_RATING_STYLE_STARS = "REVIEW_RATING_STYLE_STARS"; + field public static final java.lang.String REVIEW_RATING_STYLE_THUMPS_UP_DOWN = "REVIEW_RATING_STYLE_THUMPS_UP_DOWN"; } public static final class TvContract.Programs.Genres { diff --git a/media/java/android/media/tv/TvContract.java b/media/java/android/media/tv/TvContract.java index 3ee80af3de9fb..44f31526d1ada 100644 --- a/media/java/android/media/tv/TvContract.java +++ b/media/java/android/media/tv/TvContract.java @@ -654,7 +654,7 @@ public final class TvContract { * *
This is used to indicate the broadcast standard (e.g. ATSC, DVB or ISDB) the current * channel conforms to. Use {@link #TYPE_OTHER} for streaming-based channels, which is the - * default channel type. The value should match to one of the followings: + * default channel type. The value should match one of the followings: * {@link #TYPE_1SEG}, * {@link #TYPE_ATSC_C}, * {@link #TYPE_ATSC_M_H}, @@ -1087,6 +1087,78 @@ public final class TvContract { /** The MIME type of a single TV program. */ public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/program"; + /** + * The interaction type for "listens". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_LISTENS = "INTERACTION_TYPE_LISTENS"; + + /** + * The interaction type for "followers". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_FOLLOWERS = "INTERACTION_TYPE_FOLLOWERS"; + + /** + * The interaction type for "fans". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_FANS = "INTERACTION_TYPE_FANS"; + + /** + * The interaction type for "likes". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_LIKES = "INTERACTION_TYPE_LIKES"; + + /** + * The interaction type for "thumbs". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_THUMBS = "INTERACTION_TYPE_THUMBS"; + + /** + * The interaction type for "views". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_VIEWS = "INTERACTION_TYPE_VIEWS"; + + /** + * The interaction type for "viewers". + * + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String INTERACTION_TYPE_VIEWERS = "INTERACTION_TYPE_VIEWERS"; + + /** + * The review rating style for five star rating. + * + * @see #COLUMN_REVIEW_RATING_STYLE + */ + public static final String REVIEW_RATING_STYLE_STARS = "REVIEW_RATING_STYLE_STARS"; + + /** + * The review rating style for thumbs-up and thumbs-down rating. + * + * @see #COLUMN_REVIEW_RATING_STYLE + */ + public static final String REVIEW_RATING_STYLE_THUMPS_UP_DOWN = + "REVIEW_RATING_STYLE_THUMPS_UP_DOWN"; + + /** + * The review rating style for 0 to 100 point system. + * + * @see #COLUMN_REVIEW_RATING_STYLE + */ + public static final String REVIEW_RATING_STYLE_PERCENTAGE = + "REVIEW_RATING_STYLE_PERCENTAGE"; + /** * The ID of the TV channel that provides this TV program. * @@ -1535,6 +1607,67 @@ public final class TvContract { @SystemApi public static final String COLUMN_TRANSIENT = "transient"; + /** + * The type of interaction for this TV program. + * + *
The value should match one of the followings: + * {@link #INTERACTION_TYPE_LISTENS}, + * {@link #INTERACTION_TYPE_FOLLOWERS}, + * {@link #INTERACTION_TYPE_FANS}, + * {@link #INTERACTION_TYPE_LIKES}, + * {@link #INTERACTION_TYPE_THUMBS}, + * {@link #INTERACTION_TYPE_VIEWS}, and + * {@link #INTERACTION_TYPE_VIEWERS}. + * + *
Type: TEXT + * @see #COLUMN_INTERACTION_COUNT + */ + public static final String COLUMN_INTERACTION_TYPE = "interaction_type"; + + /** + * The interaction count for this program. + * + *
This indicates the number of times interaction has happened. + * + *
Type: INTEGER + * @see #COLUMN_INTERACTION_TYPE + */ + public static final String COLUMN_INTERACTION_COUNT = "interaction_count"; + + /** + * The author or artist of this content. + * + *
Type: TEXT + */ + public static final String COLUMN_AUTHOR = "author"; + + /** + * The review rating score style used for {@link #COLUMN_REVIEW_RATING}. + * + *
The value should match one of the followings: {@link #REVIEW_RATING_STYLE_STARS}, + * {@link #REVIEW_RATING_STYLE_THUMPS_UP_DOWN}, and {@link #REVIEW_RATING_STYLE_PERCENTAGE}. + * + *
Type: TEXT + * @see #COLUMN_REVIEW_RATING + */ + public static final String COLUMN_REVIEW_RATING_STYLE = "review_rating_style"; + + /** + * The review rating score for this program. + * + *
The format of the value is dependent on {@link #COLUMN_REVIEW_RATING_STYLE}. If the + * style is {@link #REVIEW_RATING_STYLE_STARS}, the value should be a real number between + * 0.0 and 5.0. (e.g. "4.5") If the style is {@link #REVIEW_RATING_STYLE_THUMPS_UP_DOWN}, + * the value should be two integers, one for thumbs-up count and the other for thumbs-down + * count, with a comma between them. (e.g. "200,40") If the style is + * {@link #REVIEW_RATING_STYLE_PERCENTAGE}, the value shoule be a real number between 0 and + * 100. (e.g. "99.9") + * + *
Type: TEXT + * @see #COLUMN_REVIEW_RATING_STYLE + */ + public static final String COLUMN_REVIEW_RATING = "review_rating"; + private Programs() {} /** Canonical genres for TV programs. */