调用摄像头拍照
创建文件夹存放拍照图盘
String path = Environment.getExternalStorageDirectory()+"/kog_picture";
System.out.print("path:"+path);
File f1 = new File(path);
if(!f1.exists()){
f1.mkdirs();
}
String picturePath = path + "/output_image.jpg";
File f2 = new File(picturePath);
if(f2.exists()) {
f2.delete();
}
try {
f2.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
imageUri = Uri.fromFile(f2); //将创建的路径转换成URI对象
//特定的字符串启动相机
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
//imageUri 图片的路径转换成对象
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
startActivityForResult(intent, TAKE_PHOTO);
然后回调函数 onActivityResult 中处理:
case TAKE_PHOTO:
if(resultCode == RESULT_OK){
try {
Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(imageUri));
imageView1.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
break;
调用相册获取照片
//特定的字符串启动相册
Intent intent = new Intent("android.intent.action.GET_CONTENT");
intent.setType("image/*");
startActivityForResult(intent, CHOOSE_PHOTO);
然后在回调函数中处理:
case CHOOSE_PHOTO:
if(resultCode == RESULT_OK) {
Uri uri = data.getData();
Bitmap bitmap = null;
try {
bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(uri));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
imageView1.setImageBitmap(bitmap);
}
break;