您的位置:首页 > 移动开发 > Android开发

Android源码分析之拍照、图片、录音、视频和音频功能

2014-06-08 22:32 531 查看
From:/article/11114503.html

Android源码分析之拍照、图片、录音、视频和音频功能

//选择图片 requestCode 返回的标识

Intent innerIntent = new Intent(Intent.ACTION_GET_CONTENT); //"android.intent.action.GET_CONTENT"

innerIntent.setType(contentType); //查看类型 String IMAGE_UNSPECIFIED = "image/*";

Intent wrapperIntent = Intent.createChooser(innerIntent, null);

((Activity) context).startActivityForResult(wrapperIntent, requestCode);

//视频

Intent innerIntent = new Intent(Intent.ACTION_GET_CONTENT);

innerIntent.setType(contentType); //String VIDEO_UNSPECIFIED = "video/*";

Intent wrapperIntent = Intent.createChooser(innerIntent, null);

((Activity) context).startActivityForResult(wrapperIntent, requestCode);

//添加音频

Intent innerIntent = new Intent(Intent.ACTION_GET_CONTENT);

innerIntent.setType(contentType); //String VIDEO_UNSPECIFIED = "video/*";

Intent wrapperIntent = Intent.createChooser(innerIntent, null);

((Activity) context).startActivityForResult(wrapperIntent, requestCode);

//录音

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);

intent.setType(ContentType.AUDIO_AMR); //String AUDIO_AMR = "audio/amr";

intent.setClassName("com.android.soundrecorder",

"com.android.soundrecorder.SoundRecorder");

((Activity) context).startActivityForResult(intent, requestCode);

//拍摄视频

int durationLimit = getVideoCaptureDurationLimit(); //SystemProperties.getInt("ro.media.enc.lprof.duration", 60);

Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);

intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);

intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, sizeLimit);

intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, durationLimit);

startActivityForResult(intent, REQUEST_CODE_TAKE_VIDEO);

//拍照 REQUEST_CODE_TAKE_PICTURE 为返回的标识

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); //"android.media.action.IMAGE_CAPTURE";

intent.putExtra(MediaStore.EXTRA_OUTPUT, Mms.ScrapSpace.CONTENT_URI); // output,Uri.parse("content://mms/scrapSpace");

startActivityForResult(intent, REQUEST_CODE_TAKE_PICTURE);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐