/**
* 调用系统相机
*/
private void takePhoto() {
Uri uri = null;
if (which_image == FRONT_IMAGE) {
frontFile = new File(getSDPath() +"/test/front_" + getDate() + ".jpg");
uri = Uri.fromFile(frontFile);
} else if (which_image == BACK_IMAGE) {
backFile = new File(getSDPath() + "/test/back_" + getDate() + ".jpg");
uri = Uri.fromFile(backFile);
}
Intent captureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
captureIntent.putExtra(MediaStore.Images.Media.ORIENTATION, 0);
captureIntent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
captureIntent.putExtra("return-data", true);
startActivityForResult(captureIntent, TAKE_PHOTO);
}
/**
* 获取系统时间
*
* @return
*/
public static String getDate() {
Calendar ca = Calendar.getInstance();
int year = ca.get(Calendar.YEAR);
int month = ca.get(Calendar.MONTH);
int day = ca.get(Calendar.DATE);
int minute = ca.get(Calendar.MINUTE);
int hour = ca.get(Calendar.HOUR);
int second = ca.get(Calendar.SECOND);
String date = "" + year + (month + 1) + day + hour + minute + second;
return date;
}
/**
* 获取SD path
*
* @return
*/
public String getSDPath() {
File sdDir = null;
boolean sdCardExist = Environment.getExternalStorageState()
.equals(android.os.Environment.MEDIA_MOUNTED);
if (sdCardExist) {
sdDir = Environment.getExternalStorageDirectory();
return sdDir.toString();
}
return null;
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == TAKE_PHOTO && resultCode == RESULT_OK) {
try {
if (which_image == FRONT_IMAGE) {
Uri uri = Uri.parse(MediaStore.Images.Media.insertImage(getContentResolver(), frontFile.getAbsolutePath(), null, null));
ContentResolver contentResolver = this.getContentResolver();
Bitmap bitmap = BitmapFactory.decodeStream(contentResolver.openInputStream(uri));
ivCardFront.setImageBitmap(bitmap);
} else if (which_image == BACK_IMAGE) {
Uri uri = Uri.parse(MediaStore.Images.Media.insertImage(getContentResolver(), backFile.getAbsolutePath(), null, null));
ContentResolver contentResolver = this.getContentResolver();
Bitmap bitmap = BitmapFactory.decodeStream(contentResolver.openInputStream(uri));
ivCardBack.setImageBitmap(bitmap);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}