Hello Friends,
Today, I am going to share my another post on Android Media Store. In this post
I am going to show you how to query media file like audio,images and video using
Android Media Store and Android Content Resolver .
For Listing all Images:
For Listing all Video(.mp4)
For Listing All Audio
Downalod Complete Code: MediaListing
Hope this will help some one.
Enjoy coding.................. ;)
Today, I am going to share my another post on Android Media Store. In this post
I am going to show you how to query media file like audio,images and video using
Android Media Store and Android Content Resolver .
For Listing all Images:
private void parseAllImages() { try { String[] projection = {MediaStore.Images.Media.DATA}; cursor = getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, // Which columns to return null, // Return all rows null, null); int size = cursor.getCount(); /******* If size is 0, there are no images on the SD Card. *****/ if (size == 0) { } else { int thumbID = 0; while (cursor.moveToNext()) { int file_ColumnIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); /**************** Captured image details ************/ /***** Used to show image on view in LoadImagesFromSDCard class ******/ String path = cursor.getString(file_ColumnIndex); String fileName = path.substring(path.lastIndexOf("/") + 1, path.length()); MediaFileInfo mediaFileInfo = new MediaFileInfo(); mediaFileInfo.setFilePath(path); mediaFileInfo.setFileName(fileName); mediaFileInfo.setFileType(type); mediaList.add(mediaFileInfo); } } } catch (Exception e) { e.printStackTrace(); } }
For Listing all Video(.mp4)
private void parseAllVideo() { try { String name = null; String[] thumbColumns = {MediaStore.Video.Thumbnails.DATA, MediaStore.Video.Thumbnails.VIDEO_ID}; int video_column_index; String[] proj = {MediaStore.Video.Media._ID, MediaStore.Video.Media.DATA, MediaStore.Video.Media.DISPLAY_NAME, MediaStore.Video.Media.SIZE}; Cursor videocursor = getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, proj, null, null, null); int count = videocursor.getCount(); Log.d("No of video", "" + count); for (int i = 0; i < count; i++) { MediaFileInfo mediaFileInfo = new MediaFileInfo(); video_column_index = videocursor .getColumnIndexOrThrow(MediaStore.Video.Media.DISPLAY_NAME); videocursor.moveToPosition(i); name = videocursor.getString(video_column_index); mediaFileInfo.setFileName(name); int column_index = videocursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); videocursor.moveToPosition(i); String filepath = videocursor.getString(column_index); mediaFileInfo.setFilePath(filepath); mediaFileInfo.setFileType(type); mediaList.add(mediaFileInfo); // id += " Size(KB):" + // videocursor.getString(video_column_index); } videocursor.close(); } catch (Exception e) { e.printStackTrace(); } }
For Listing All Audio
private void parseAllAudio() { try { String TAG = "Audio"; Cursor cur = getContentResolver().query( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null); if (cur == null) { // Query failed... Log.e(TAG, "Failed to retrieve music: cursor is null :-("); } else if (!cur.moveToFirst()) { // Nothing to query. There is no music on the device. How boring. Log.e(TAG, "Failed to move cursor to first row (no query results)."); }else { Log.i(TAG, "Listing..."); // retrieve the indices of the columns where the ID, title, etc. of the song are // add each song to mItems do { int artistColumn = cur.getColumnIndex(MediaStore.Audio.Media.ARTIST); int titleColumn = cur.getColumnIndex(MediaStore.Audio.Media.TITLE); int albumColumn = cur.getColumnIndex(MediaStore.Audio.Media.ALBUM); int durationColumn = cur.getColumnIndex(MediaStore.Audio.Media.DURATION); int idColumn = cur.getColumnIndex(MediaStore.Audio.Media._ID); int filePathIndex = cur.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); Log.i(TAG, "Title column index: " + String.valueOf(titleColumn)); Log.i(TAG, "ID column index: " + String.valueOf(titleColumn)); Log.i("Final ", "ID: " + cur.getString(idColumn) + " Title: " + cur.getString(titleColumn) + "Path: " + cur.getString(filePathIndex)); MediaFileInfo audio = new MediaFileInfo(); audio.setFileName(cur.getString(titleColumn)); audio.setFilePath(cur.getString(filePathIndex)); audio.setFileType(type); mediaList.add(audio); } while (cur.moveToNext()); } } catch (Exception e) { e.printStackTrace(); } }
Downalod Complete Code: MediaListing
Hope this will help some one.
Enjoy coding.................. ;)