手機拍照第一種狀況;
private void takePicture(){測試
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
SimpleDateFormat timeStampFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss");
String filename = timeStampFormat.format(new Date());
ContentValues values = new ContentValues();
values.put(Media.TITLE, filename);
photoUri =getActivity().getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
startActivityForResult(intent, TAKE_PHOTO);spa
}orm
public void onActivityResult(int requestCode, int resultCode, Intent data) {圖片
data 未空,注意data 是指Intent get
緣由:即指定了目標uri 若是指定了目標uri,data就沒有數據,若是沒有指定uri,則data就返回有數據!it
可根據 photoUri全局變量獲取URI;form
}變量
手機拍照第二種狀況;
private void takePicture(){file
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, TAKE_PHOTO);request
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
data 非空,注意data 是指Intent
Uri uri=Intent.getData();
發現依舊返回null;因爲測試機無SD卡 ,緣由不詳,請知道的指教
解決方法:if(data.hasExtra("data")){
Bitmap bitMap = data.getParcelableExtra("data");獲得圖片
}
}