From bd7bcf0fba1a991e80ea279b090aa584707fdabf Mon Sep 17 00:00:00 2001 From: Matt Casey Date: Wed, 5 Feb 2014 15:51:39 -0800 Subject: Add more MediaStore constants for playback intents Constants are derived from this doc: https://docs.google.com/a/google.com/document/d/1lmlFcTeefLDRp_bpMrXk3yK9nKxoTVfpcShanpLxiMg/edit#heading=h.b16863tyyjzv That doc contains the full explanation of these changes. I'm making this change on behalf of {elmas,pengr} who don't have android source access but designed this in collaboration with rharagutchi on the play music team. I'll probably have to route any significant questions through them. Bug: 12874557 Change-Id: I85a4bee57a2bde519da0dc6de2cad9d036da225c --- api/current.txt | 9 +++++++++ core/java/android/content/ContentResolver.java | 8 ++++++++ core/java/android/provider/MediaStore.java | 20 ++++++++++++++++++++ 3 files changed, 37 insertions(+) diff --git a/api/current.txt b/api/current.txt index a0a4e91..4d9fa17 100644 --- a/api/current.txt +++ b/api/current.txt @@ -6115,6 +6115,7 @@ package android.content { method public final void unregisterContentObserver(android.database.ContentObserver); method public final int update(android.net.Uri, android.content.ContentValues, java.lang.String, java.lang.String[]); method public static void validateSyncExtrasBundle(android.os.Bundle); + field public static final java.lang.String ANY_CURSOR_ITEM_TYPE = "vnd.android.cursor.item/*"; field public static final java.lang.String CURSOR_DIR_BASE_TYPE = "vnd.android.cursor.dir"; field public static final java.lang.String CURSOR_ITEM_BASE_TYPE = "vnd.android.cursor.item"; field public static final java.lang.String SCHEME_ANDROID_RESOURCE = "android.resource"; @@ -21560,6 +21561,8 @@ package android.provider { field public static final java.lang.String EXTRA_MEDIA_ALBUM = "android.intent.extra.album"; field public static final java.lang.String EXTRA_MEDIA_ARTIST = "android.intent.extra.artist"; field public static final java.lang.String EXTRA_MEDIA_FOCUS = "android.intent.extra.focus"; + field public static final java.lang.String EXTRA_MEDIA_GENRE = "android.intent.extra.genre"; + field public static final java.lang.String EXTRA_MEDIA_RADIO_CHANNEL = "android.intent.extra.radio_channel"; field public static final java.lang.String EXTRA_MEDIA_TITLE = "android.intent.extra.title"; field public static final java.lang.String EXTRA_OUTPUT = "output"; field public static final java.lang.String EXTRA_SCREEN_ORIENTATION = "android.intent.extra.screenOrientation"; @@ -21678,6 +21681,7 @@ package android.provider { method public static android.net.Uri getContentUriForPath(java.lang.String); field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/audio"; field public static final java.lang.String DEFAULT_SORT_ORDER = "title_key"; + field public static final java.lang.String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/audio"; field public static final android.net.Uri EXTERNAL_CONTENT_URI; field public static final java.lang.String EXTRA_MAX_BYTES = "android.provider.MediaStore.extra.MAX_BYTES"; field public static final android.net.Uri INTERNAL_CONTENT_URI; @@ -21713,6 +21717,11 @@ package android.provider { field public static final java.lang.String NAME = "name"; } + public static final class MediaStore.Audio.Radio { + ctor public MediaStore.Audio.Radio(); + field public static final java.lang.String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/radio"; + } + public static final class MediaStore.Files { ctor public MediaStore.Files(); method public static android.net.Uri getContentUri(java.lang.String); diff --git a/core/java/android/content/ContentResolver.java b/core/java/android/content/ContentResolver.java index 3fc933d..8694416 100644 --- a/core/java/android/content/ContentResolver.java +++ b/core/java/android/content/ContentResolver.java @@ -192,6 +192,14 @@ public abstract class ContentResolver { */ public static final String CURSOR_DIR_BASE_TYPE = "vnd.android.cursor.dir"; + /** + * This is the Android platform's generic MIME type to match any MIME + * type of the form "{@link #CURSOR_ITEM_BASE_TYPE}/{@code SUB_TYPE}". + * {@code SUB_TYPE} is the sub-type of the application-dependent + * content, e.g., "audio", "video", "playlist". + */ + public static final String ANY_CURSOR_ITEM_TYPE = "vnd.android.cursor.item/*"; + /** @hide */ public static final int SYNC_ERROR_SYNC_ALREADY_IN_PROGRESS = 1; /** @hide */ diff --git a/core/java/android/provider/MediaStore.java b/core/java/android/provider/MediaStore.java index f69cad0..bd576af 100644 --- a/core/java/android/provider/MediaStore.java +++ b/core/java/android/provider/MediaStore.java @@ -169,6 +169,14 @@ public final class MediaStore { */ public static final String EXTRA_MEDIA_TITLE = "android.intent.extra.title"; /** + * The name of the Intent-extra used to define the genre. + */ + public static final String EXTRA_MEDIA_GENRE = "android.intent.extra.genre"; + /** + * The name of the Intent-extra used to define the radio channel. + */ + public static final String EXTRA_MEDIA_RADIO_CHANNEL = "android.intent.extra.radio_channel"; + /** * The name of the Intent-extra used to define the search focus. The search focus * indicates whether the search should be for things related to the artist, album * or song that is identified by the other extras. @@ -1389,6 +1397,11 @@ public final class MediaStore { public static final String CONTENT_TYPE = "vnd.android.cursor.dir/audio"; /** + * The MIME type for an audio track. + */ + public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/audio"; + + /** * The default sort order for this table */ public static final String DEFAULT_SORT_ORDER = TITLE_KEY; @@ -1859,6 +1872,13 @@ public final class MediaStore { */ public static final String DEFAULT_SORT_ORDER = ALBUM_KEY; } + + public static final class Radio { + /** + * The MIME type for entries in this table. + */ + public static final String ENTRY_CONTENT_TYPE = "vnd.android.cursor.item/radio"; + } } public static final class Video { -- cgit v1.1