Android调用系统相机拍照并存入相册

调用系统相机的方法如下:

    private void onTakeCamera(){



    String path = fileHandler.getCameraPath()+"SM_"+System.currentTimeMillis()+".jpg";


    tempFile= new File(path);

    if(tempFile != null){

        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(tempFile));
        startActivityForResult(intent, RESULT_CAMERA);

    }else{
        showToast("照相机初始化失败");
    }
}   

如此,然后在onActivityResult方法中直接操作tempFile。

private void insertToMediaStore(File sourceFile){

    ContentValues newValues = new ContentValues(6);
    String title = sourceFile.getName();
    newValues.put(MediaStore.Images.Media.TITLE,title);
    newValues.put(MediaStore.Images.Media.DISPLAY_NAME,
            sourceFile.getName());
    newValues.put(MediaStore.Images.Media.DATA, sourceFile.getPath());
    newValues.put(MediaStore.Images.Media.DATE_MODIFIED,
            System.currentTimeMillis() / 1000);
    newValues.put(MediaStore.Images.Media.SIZE, sourceFile.length());
    newValues.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
    this.getContentResolver().insert(
            MediaStore.Images.Media.EXTERNAL_CONTENT_URI, newValues);
}

这里用到了ContentResolver,MediaStore,ContentValues 。

这是关于四大组件之一的内容,慢慢再来解释。

你可能感兴趣的:(工作记录)