我调用照相机拍照的代码是:
cameraFile = Uri.fromFile(new File(Environment.getExternalStorageDirectory(), DemoApplication.getInstance().getUserName()
+ System.currentTimeMillis() + ".jpg"));
cameraFileString = cameraFile.getPath().toString();
Log.i("gather_uri", cameraFile.getPath());
intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, cameraFile);
//intent.putExtra("return-data", true);
cordova.startActivityForResult(this, intent, PICK_FROM_CAMERA);
返回回调代码是:
case PICK_FROM_CAMERA: //拍照后回调
Log.i("gather_img", "222" + cameraFile.getPath());
if(data != null){
Log.i("gather_img", "333" + cameraFile.getPath());
intent = new Intent(cordova.getActivity(), CropImageActivity.class);
intent.putExtra("image", cameraFile.getPath());
intent.putExtra("status", photoStatus);
cordova.startActivityForResult(this, intent, 600);
}
break;
在Nexus 5和Nexus 4的5.1.1的手机上测试没有任何问题,在小米的4.4的手机上测试是发现返回的数据data是空的,有遇到或了解类似问题的朋友吗?