FileDocCategorySizeDatePackage
MediaStore.javaAPI DocAndroid 5.1 API90776Thu Mar 12 22:22:10 GMT 2015android.provider

MediaStore

public final class MediaStore extends Object
The Media provider contains meta data for all available media on both internal and external storage devices.

Fields Summary
private static final String
TAG
public static final String
AUTHORITY
private static final String
CONTENT_AUTHORITY_SLASH
public static final String
ACTION_MTP_SESSION_END
Broadcast Action: A broadcast to indicate the end of an MTP session with the host. This broadcast is only sent if MTP activity has modified the media database during the most recent MTP session.
public static final String
UNHIDE_CALL
The method name used by the media scanner and mtp to tell the media provider to rescan and reclassify that have become unhidden because of renaming folders or removing nomedia files
public static final String
PARAM_DELETE_DATA
This is for internal use by the media scanner only. Name of the (optional) Uri parameter that determines whether to skip deleting the file pointed to by the _data column, when deleting the database entry. The only appropriate value for this parameter is "false", in which case the delete will be skipped. Note especially that setting this to true, or omitting the parameter altogether, will perform the default action, which is different for different types of media.
public static final String
INTENT_ACTION_MUSIC_PLAYER
Activity Action: Launch a music player. The activity should be able to play, browse, or manipulate music files stored on the device.
public static final String
INTENT_ACTION_MEDIA_SEARCH
Activity Action: Perform a search for media. Contains at least the {@link android.app.SearchManager#QUERY} extra. May also contain any combination of the following extras: EXTRA_MEDIA_ARTIST, EXTRA_MEDIA_ALBUM, EXTRA_MEDIA_TITLE, EXTRA_MEDIA_FOCUS
public static final String
INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH
An intent to perform a search for music media and automatically play content from the result when possible. This can be fired, for example, by the result of a voice recognition command to listen to music.

This intent always includes the {@link android.provider.MediaStore#EXTRA_MEDIA_FOCUS} and {@link android.app.SearchManager#QUERY} extras. The {@link android.provider.MediaStore#EXTRA_MEDIA_FOCUS} extra determines the search mode, and the value of the {@link android.app.SearchManager#QUERY} extra depends on the search mode. For more information about the search modes for this intent, see Play music based on a search query in Common Intents.

This intent makes the most sense for apps that can support large-scale search of music, such as services connected to an online database of music which can be streamed and played on the device.

public static final String
INTENT_ACTION_TEXT_OPEN_FROM_SEARCH
An intent to perform a search for readable media and automatically play content from the result when possible. This can be fired, for example, by the result of a voice recognition command to read a book or magazine.

Contains the {@link android.app.SearchManager#QUERY} extra, which is a string that can contain any type of unstructured text search, like the name of a book or magazine, an author a genre, a publisher, or any combination of these.

Because this intent includes an open-ended unstructured search string, it makes the most sense for apps that can support large-scale search of text media, such as services connected to an online database of books and/or magazines which can be read on the device.

public static final String
INTENT_ACTION_VIDEO_PLAY_FROM_SEARCH
An intent to perform a search for video media and automatically play content from the result when possible. This can be fired, for example, by the result of a voice recognition command to play movies.

Contains the {@link android.app.SearchManager#QUERY} extra, which is a string that can contain any type of unstructured video search, like the name of a movie, one or more actors, a genre, or any combination of these.

Because this intent includes an open-ended unstructured search string, it makes the most sense for apps that can support large-scale search of video, such as services connected to an online database of videos which can be streamed and played on the device.

public static final String
EXTRA_MEDIA_ARTIST
The name of the Intent-extra used to define the artist
public static final String
EXTRA_MEDIA_ALBUM
The name of the Intent-extra used to define the album
public static final String
EXTRA_MEDIA_TITLE
The name of the Intent-extra used to define the song title
public static final String
EXTRA_MEDIA_GENRE
The name of the Intent-extra used to define the genre.
public static final String
EXTRA_MEDIA_PLAYLIST
The name of the Intent-extra used to define the playlist.
public static final String
EXTRA_MEDIA_RADIO_CHANNEL
The name of the Intent-extra used to define the radio channel.
public static final String
EXTRA_MEDIA_FOCUS
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.
public static final String
EXTRA_SCREEN_ORIENTATION
The name of the Intent-extra used to control the orientation of a ViewImage or a MovieView. This is an int property that overrides the activity's requestedOrientation.
public static final String
EXTRA_FULL_SCREEN
The name of an Intent-extra used to control the UI of a ViewImage. This is a boolean property that overrides the activity's default fullscreen state.
public static final String
EXTRA_SHOW_ACTION_ICONS
The name of an Intent-extra used to control the UI of a ViewImage. This is a boolean property that specifies whether or not to show action icons.
public static final String
EXTRA_FINISH_ON_COMPLETION
The name of the Intent-extra used to control the onCompletion behavior of a MovieView. This is a boolean property that specifies whether or not to finish the MovieView activity when the movie completes playing. The default value is true, which means to automatically exit the movie player activity when the movie completes playing.
public static final String
INTENT_ACTION_STILL_IMAGE_CAMERA
The name of the Intent action used to launch a camera in still image mode.
public static final String
INTENT_ACTION_STILL_IMAGE_CAMERA_SECURE
The name of the Intent action used to launch a camera in still image mode for use when the device is secured (e.g. with a pin, password, pattern, or face unlock). Applications responding to this intent must not expose any personal content like existing photos or videos on the device. The applications should be careful not to share any photo or video with other applications or internet. The activity should use {@link android.view.WindowManager.LayoutParams#FLAG_SHOW_WHEN_LOCKED} to display on top of the lock screen while secured. There is no activity stack when this flag is used, so launching more than one activity is strongly discouraged.
public static final String
INTENT_ACTION_VIDEO_CAMERA
The name of the Intent action used to launch a camera in video mode.
public static final String
ACTION_IMAGE_CAPTURE
Standard Intent action that can be sent to have the camera application capture an image and return it.

The caller may pass an extra EXTRA_OUTPUT to control where this image will be written. If the EXTRA_OUTPUT is not present, then a small sized image is returned as a Bitmap object in the extra field. This is useful for applications that only need a small image. If the EXTRA_OUTPUT is present, then the full-sized image will be written to the Uri value of EXTRA_OUTPUT. As of {@link android.os.Build.VERSION_CODES#LOLLIPOP}, this uri can also be supplied through {@link android.content.Intent#setClipData(ClipData)}. If using this approach, you still must supply the uri through the EXTRA_OUTPUT field for compatibility with old applications. If you don't set a ClipData, it will be copied there for you when calling {@link Context#startActivity(Intent)}.

public static final String
ACTION_IMAGE_CAPTURE_SECURE
Intent action that can be sent to have the camera application capture an image and return it when the device is secured (e.g. with a pin, password, pattern, or face unlock). Applications responding to this intent must not expose any personal content like existing photos or videos on the device. The applications should be careful not to share any photo or video with other applications or internet. The activity should use {@link android.view.WindowManager.LayoutParams#FLAG_SHOW_WHEN_LOCKED} to display on top of the lock screen while secured. There is no activity stack when this flag is used, so launching more than one activity is strongly discouraged.

The caller may pass an extra EXTRA_OUTPUT to control where this image will be written. If the EXTRA_OUTPUT is not present, then a small sized image is returned as a Bitmap object in the extra field. This is useful for applications that only need a small image. If the EXTRA_OUTPUT is present, then the full-sized image will be written to the Uri value of EXTRA_OUTPUT. As of {@link android.os.Build.VERSION_CODES#LOLLIPOP}, this uri can also be supplied through {@link android.content.Intent#setClipData(ClipData)}. If using this approach, you still must supply the uri through the EXTRA_OUTPUT field for compatibility with old applications. If you don't set a ClipData, it will be copied there for you when calling {@link Context#startActivity(Intent)}.

public static final String
ACTION_VIDEO_CAPTURE
Standard Intent action that can be sent to have the camera application capture a video and return it.

The caller may pass in an extra EXTRA_VIDEO_QUALITY to control the video quality.

The caller may pass in an extra EXTRA_OUTPUT to control where the video is written. If EXTRA_OUTPUT is not present the video will be written to the standard location for videos, and the Uri of that location will be returned in the data field of the Uri. As of {@link android.os.Build.VERSION_CODES#LOLLIPOP}, this uri can also be supplied through {@link android.content.Intent#setClipData(ClipData)}. If using this approach, you still must supply the uri through the EXTRA_OUTPUT field for compatibility with old applications. If you don't set a ClipData, it will be copied there for you when calling {@link Context#startActivity(Intent)}.

public static final String
EXTRA_VIDEO_QUALITY
The name of the Intent-extra used to control the quality of a recorded video. This is an integer property. Currently value 0 means low quality, suitable for MMS messages, and value 1 means high quality. In the future other quality levels may be added.
public static final String
EXTRA_SIZE_LIMIT
Specify the maximum allowed size.
public static final String
EXTRA_DURATION_LIMIT
Specify the maximum allowed recording duration in seconds.
public static final String
EXTRA_OUTPUT
The name of the Intent-extra used to indicate a content resolver Uri to be used to store the requested image or video.
public static final String
UNKNOWN_STRING
The string that is used when a media attribute is not known. For example, if an audio file does not have any meta data, the artist and album columns will be set to this value.
public static final String
MEDIA_SCANNER_VOLUME
Name of current volume being scanned by the media scanner.
public static final String
MEDIA_IGNORE_FILENAME
Name of the file signaling the media scanner to ignore media in the containing directory and its subdirectories. Developers should use this to avoid application graphics showing up in the Gallery and likewise prevent application sounds and music from showing up in the Music app.
Constructors Summary
Methods Summary
public static android.net.UrigetMediaScannerUri()
Uri for querying the state of the media scanner.

        
    

                  
        
        return Uri.parse(CONTENT_AUTHORITY_SLASH + "none/media_scanner");
    
public static java.lang.StringgetVersion(android.content.Context context)
Get the media provider's version. Applications that import data from the media provider into their own caches can use this to detect that the media provider changed, and reimport data as needed. No other assumptions should be made about the meaning of the version.

param
context Context to use for performing the query.
return
A version string, or null if the version could not be determined.


                                                                           
         
        Cursor c = context.getContentResolver().query(
                Uri.parse(CONTENT_AUTHORITY_SLASH + "none/version"),
                null, null, null, null);
        if (c != null) {
            try {
                if (c.moveToFirst()) {
                    return c.getString(0);
                }
            } finally {
                c.close();
            }
        }
        return null;