本文主要介绍Android实现拍照、录像、录音代码的资料,这里整理了详细的代码,有需要的小伙伴可以参考下。

RecordActivity.java   

package com.cons.dcg.collect;import java.io.File;import java.text.SimpleDateFormat;import java.util.*;import android.app.*;import android.content.Intent;import android.database.Cursor;import android.net.Uri;import android.os.AsyncTask;import android.os.Bundle;import android.os.Environment;import android.provider.MediaStore;import android.view.*;import android.widget.*;public class RecordActivity extends Activity implements OnClickListener {    private static final int RESULT_CAPTURE_IMAGE = 1;// 照相的requestCode    private static final int REQUEST_CODE_TAKE_VIDEO = 2;// 摄像的照相的requestCode    private static final int RESULT_CAPTURE_RECORDER_SOUND = 3;// 录音的requestCode    private String strImgPath = "";// 照片文件绝对路径    private String strVideoPath = "";// 视频文件的绝对路径    private String strRecorderPath = "";// 录音文件的绝对路径     @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        this.setContentView(R.layout.problem_report);    }    @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {        super.onActivityResult(requestCode, resultCode, data);        switch (requestCode) {        case RESULT_CAPTURE_IMAGE://拍照            if (resultCode == RESULT_OK) {                Toast.makeText(this, strImgPath, Toast.LENGTH_SHORT).show();            }            break;        case REQUEST_CODE_TAKE_VIDEO://拍摄视频            if (resultCode == RESULT_OK) {                Uri uriVideo = data.getData();                Cursor cursor=this.getContentResolver().query(uriVideo, null, null, null, null);                if (cursor.moveToNext()) {                    /** _data:文件的绝对路径 ,_display_name:文件名 */                    strVideoPath = cursor.getString(cursor.getColumnIndex("_data"));                    Toast.makeText(this, strVideoPath, Toast.LENGTH_SHORT).show();                } }            break;        case RESULT_CAPTURE_RECORDER_SOUND://录音            if (resultCode == RESULT_OK) {                Uri uriRecorder = data.getData();                Cursor cursor=this.getContentResolver().query(uriRecorder, null, null, null, null);                if (cursor.moveToNext()) {                    /** _data:文件的绝对路径 ,_display_name:文件名 */                    strRecorderPath = cursor.getString(cursor.getColumnIndex("_data"));                    Toast.makeText(this, strRecorderPath, Toast.LENGTH_SHORT).show();                }            }             break;        }    }    /**     * 照相功能     */    private void cameraMethod() {        Intent imageCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);        strImgPath = Environment.getExternalStorageDirectory().toString() + "/CONSDCGMPIC/";//存放照片的文件夹        String fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".jpg";//照片命名        File out = new File(strImgPath);        if (!out.exists()) {            out.mkdirs();        }        out = new File(strImgPath, fileName);        strImgPath = strImgPath + fileName;//该照片的绝对路径        Uri uri = Uri.fromFile(out);        imageCaptureIntent.putExtra(MediaStore.EXTRA_OUTPUT, uri);        imageCaptureIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);        startActivityForResult(imageCaptureIntent, RESULT_CAPTURE_IMAGE);     }    /**     * 拍摄视频     */    private void videoMethod() {        Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);        intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);        startActivityForResult(intent, REQUEST_CODE_TAKE_VIDEO);    }    /**     * 录音功能     */    private void soundRecorderMethod() {        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);        intent.setType("audio/amr");        startActivityForResult(intent, RESULT_CAPTURE_RECORDER_SOUND);    }     /**     * 提示信息     * @param text     * @param duration     */    private void showToast(String text, int duration) {        Toast.makeText(ProblemReport.this, text, duration).show();    }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多相关文章

  1. android 怎样为多媒体文件生成缩略图
  2. android 完美的ListView实现【原创】
  3. Android(安卓)判断网络是否可用 & 获取IP地址 & 获取以太网口MAC
  4. android上传图片或文件
  5. Android(安卓)Gradle依赖管理、去除重复依赖、忽略
  6. Android错误之控件FloatingActionButton
  7. Android实现使用流媒体播放远程mp3文件的方法
  8. 第20章、OnCheckedChangeListener事件(从零开始学Android)
  9. Android(安卓)Runtime

随机推荐

  1. xml——json
  2. XML数据查询技术已经成为现今的研究热点
  3. PHP扩展之XML操作(二)——XML解析器安装及
  4. Jquery读取xml
  5. 使用XmlTextWriter生成XML文件
  6. PHP扩展之XML操作(一)——SimpleXML
  7. js字符串转换成xml并使用
  8. XML数据读取方式性能比较(二)
  9. 让Asp与XML交互
  10. XML 实体引用、注释、命名规则