import java.io.IOException;import android.app.Activity;import android.content.ContentResolver;import android.database.Cursor;import android.media.ExifInterface;import android.os.Bundle;import android.provider.MediaStore;public class MainActivity extends Activity {    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        //测试1        //getVideosInfo();        //测试2        //getPhotosInfo();        //测试3        getAudiosInfo();    }        //获取设备上所有的视频信息private void getVideosInfo() {ContentResolver contentResolver=getContentResolver();String [] videoColumns=new String[]{MediaStore.Video.Media._ID,MediaStore.Video.Media.DATA,MediaStore.Video.Media.TITLE,MediaStore.Video.Media.MIME_TYPE};//      两种方法均可//Cursor cursor=//    this.managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, mediaColumns, null, null, null);Cursor cursor=contentResolver.query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, videoColumns, null, null, null);while (cursor.moveToNext()) {String _id=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media._ID));String filePath=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA));String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.TITLE));String mime_type=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.MIME_TYPE));    System.out.println("_id="+_id);    System.out.println("title="+title);    System.out.println("filePath="+filePath);    System.out.println("mime_type="+mime_type);}} //获取设备上所有的照片信息 private void getPhotosInfo() {ContentResolver contentResolver=getContentResolver();String [] photoColumns=new String[]{MediaStore.Images.Media._ID,MediaStore.Images.Media.DATA,MediaStore.Images.Media.TITLE,MediaStore.Images.Media.MIME_TYPE,MediaStore.Images.Media.SIZE,MediaStore.Images.Media.ORIENTATION};//      两种方法均可//Cursor cursor=//    this.managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, mediaColumns, null, null, null);Cursor cursor=contentResolver.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, photoColumns, null, null, null);while (cursor.moveToNext()) {String _id=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media._ID));String filePath=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA));String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.TITLE));String mime_type=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.MIME_TYPE));String size=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.SIZE));//得到照片旋转角度方法一String orientation0=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Images.Media.ORIENTATION));    System.out.println("_id="+_id);    System.out.println("size="+size);    System.out.println("title="+title);    System.out.println("filePath="+filePath);    System.out.println("mime_type="+mime_type);    System.out.println("第一处 orientation0="+orientation0);    try {ExifInterface exifInterface=new ExifInterface(filePath);String image_length=exifInterface.getAttribute(ExifInterface.TAG_IMAGE_LENGTH);String image_width=exifInterface.getAttribute(ExifInterface.TAG_IMAGE_WIDTH);String orientation1=exifInterface.getAttribute(ExifInterface.TAG_ORIENTATION);String dateTime=exifInterface.getAttribute(ExifInterface.TAG_DATETIME);System.out.println("image_length="+image_length);System.out.println("image_width="+image_width);System.out.println("dateTime="+dateTime);//得到照片旋转角度方法二//应该结合ExifInterface源码分析.//此处有待于进一步分析和验证switch (Integer.valueOf(orientation1)) {case 1:System.out.println("第二处旋转角度="+0);break;case 2://matrix.invert(matrix);break;case 3://matrix.setRotate(180);System.out.println("第二处旋转角度="+180);break;case 4://matrix.invert(matrix);//matrix.setRotate(180);System.out.println("第二处旋转角度="+180);break;case 5://matrix.setRotate(90);//matrix.invert(matrix);System.out.println("第二处旋转角度="+90);break;case 6://matrix.setRotate(90);System.out.println("第二处旋转角度="+90);break; case 7: //matrix.invert(matrix);//matrix.setRotate(90);System.out.println("第二处旋转角度="+90);break;    case 8://matrix.setRotate(270);System.out.println("第二处旋转角度="+270);break;default: break;}System.out.println("XXXXXXXXXXXXXXXXXXX");} catch (IOException e) {e.printStackTrace();}}  }  //获取设备上所有的音频信息 private void getAudiosInfo() {ContentResolver contentResolver=getContentResolver();String [] audioColumns=new String[]{MediaStore.Audio.Media._ID,MediaStore.Audio.Media.DATA,MediaStore.Audio.Media.TITLE,MediaStore.Audio.Media.MIME_TYPE};//      两种方法均可//Cursor cursor=//    this.managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, mediaColumns, null, null, null);Cursor cursor=contentResolver.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, audioColumns, null, null, null);while (cursor.moveToNext()) {String _id=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media._ID));String filePath=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));String title=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.TITLE));String mime_type=cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Audio.Media.MIME_TYPE));    System.out.println("_id="+_id);    System.out.println("title="+title);    System.out.println("filePath="+filePath);    System.out.println("mime_type="+mime_type);}  }   }

移动开发:Android中MediaStore使用示例

转载文章:http://blog.csdn.net/djy1992/article/details/9948105


更多相关文章

  1. android download file and save to sdCard
  2. Android(安卓)终端上的开发工具
  3. Android(安卓)Bluetooth 文件接收路径修改方法
  4. Android获取物理地址(支持5.0~10.0)
  5. Android(安卓)一行代码全局应用内屏蔽系统设置字体和显示大小
  6. Android之获取手机相关信息
  7. Android中 Bitmap和Drawable相互转换的方法
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. 如何将 Android带入互联网数字家庭? 第三
  2. Android最新敲诈者病毒分析及解锁
  3. Android(安卓)Google Map API使用的八个
  4. Android通讯录模糊查询搜索(号码,姓名,首
  5. Android监听程序自身被卸载
  6. Android(安卓)Studio 的项目导入svn和svn
  7. RelativeLayout 在SDK 16(Android4.0)上 an
  8. Android中手势监听GestureDetector基础&a
  9. 使用属性动画ObjectAnimator来实现控件动
  10. Android(安卓)TextView 去除顶部和底部留