public final class

MediaStore

extends Object
java.lang.Object
android.provider.MediaStore
The Media provider contains meta data for all available media on both internal and external storage devices.

tr: 媒体提供者 包含了外部存储以及内部存储中所有有效的媒体介质


工作中遇到的一个需求 : 获取 SDcard中 所有音频,视频,以及文本文档 进行备份
Nested Classes
class MediaStore.Audio | Container for all audio content.
class MediaStore.Files | Media provider table containing an index of all files in the media storage, including non-media files.
class MediaStore.Images| Contains meta data for all available images.
class MediaStore.Video |



获取音频文件的一个范例: (视频仅需更换Audio类为Video类)
   
int limit = 30;String[] iStrings = new String[limit];String[] audioItems = { MediaStore.Audio.Media.TITLE,MediaStore.Audio.Media.DURATION, MediaStore.Audio.Media.ARTIST,MediaStore.Audio.Media._ID,MediaStore.Audio.Media.DISPLAY_NAME,MediaStore.Audio.Media.DATA };Cursor audioCursor = GlobalVars.appContext.getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, audioItems, null,null, MediaStore.Audio.Media._ID + "");if (audioCursor != null) {audioCursor.moveToFirst();int i = 0;while (audioCursor.getPosition() != audioCursor.getCount()&& i < limit) {Uri uri = Uri.parse(audioCursor.getString(audioCursor.getColumnIndex(MediaStore.Audio.Media.DATA)));iStrings[i] = uri.getPath();audioCursor.moveToNext();i++;}audioCursor.close();}


这里需要注意的是 当使用的API < 11 (3.0)时, 是不支持MediaStore.Files 类的 所以在 3.0之前 ,还是需要用遍历的方式!
// FIXME 临时设定文档的类型public static final String[] documentTypeArr = { ".txt", ".pdf" };private List<File> getDocumentsFiles(File root) {File files[] = root.listFiles();if (files != null)for (File f : files) {if (f.isDirectory()) {getDocumentsFiles(f);} else {if (isVaildFileType(f))this.list.add(f);}}return list;}private boolean isVaildFileType(File f) {for (String type : documentTypeArr) {if (f.getName().contains(type))return true;}return false;}





更多相关文章

  1. 获取mic音量大小
  2. Navigation(2)
  3. android获取全局context对象
  4. 精确获取android软键盘高度
  5. Android获取实时网速
  6. 时间处理工具类
  7. android 唤醒屏幕并解锁
  8. WebView与Android之间的交互(js有效,传值)
  9. Android(安卓)Opengl

随机推荐

  1. Android BitmapShader 实战 实现圆形、圆
  2. 默认墨迹天气 下雪效果
  3. Android Picasso Dropbox:如何将图像加载
  4. android MediaScanner 扫出来的ID3 MP3文
  5. osmdroid 6.0.1基础测试
  6. TextView在单击时发送电子邮件
  7. Android学习笔记--《第一行代码Android》
  8. android-eclipse-phonegap 2..9以下(包含
  9. 如何将文件路径从.java类文件传递到本机j
  10. Android开发之线程与线程池