1、权限
首先一定记得添加清单文件的权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/><!--读SD卡权限-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><!--写SD卡权限-->
<uses-permission android:name="android.permission.CAMERA"/> <!--照相机权限-->
2 、使用方法
A、录相机
Intent intent = new Intent();
intent.setAction(MediaStore.ACTION_VIDEO_CAPTURE);//打开录相机
startActivityForResult(intent,101);
B、照片
Intent intent2 = new Intent();
intent2.setAction(Intent.ACTION_PICK);//打开图库
intent2.setType("image/*");//过滤,只剩图片
startActivityForResult(intent2,102);
C、视频
Intent intent3 = new Intent();
intent3.setAction(Intent.ACTION_PICK);//打开图库
intent3.setType("video/*");//过滤,只剩视频
startActivityForResult(intent3,103);
D、照相机
String path;
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
Intent intent = new Intent();
intent.setAction(MediaStore.ACTION_IMAGE_CAPTURE);//打开相机
Date date = new Date();
String format = sdf.format(date);
Log.d("xxx",format);
String name = "IMG_"+format+".jpg";
path = "/mnt/sdcard/DCIM/Screenshots/"+name;
Log.d("xxx",path);
// TODO: 1:使用内容提供者向图库插入一条记录
ContentResolver contentResolver = getContentResolver();
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.DATA,path);
//使用内容提供者向图库插入一条记录
Uri uri = contentResolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
//TODO 2:将照片保存到SD卡中
intent.putExtra(MediaStore.EXTRA_OUTPUT,uri);
startActivityForResult(intent,104);