我可以在Android手机上成功拍照,但不能在Nexus 10平板电脑上拍照。即使我拍了照片,平板电脑也会返回空值。要启动照片拍摄,请使用以下代码:
String fileName = "myimage.jpg";
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE, fileName);
values.put(MediaStore.Images.Media.DESCRIPTION,"Image capture by camera");
imageUri = getContentResolver().insert(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
Intent intent = new Intent( MediaStore.ACTION_IMAGE_CAPTURE );
startActivityForResult( intent, RESULT_LOAD_IMAGE);
我拍摄照片后返回的代码如下:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK && null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Log.d("selectedImage=", String.valueOf(selectedImage));
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
使用Nexus平板电脑时,活动会返回selectedImage的空值,但会返回三星Galaxy 4的有效值。两台设备之间可能有什么不同,我如何容纳差异?我应该注意到,使用平板电脑拍照时,照片也没有放在我的画廊中。任何帮助表示赞赏。