ACTION_IMAGE_CAPTURE 在三星设备上模糊
ACTION_IMAGE_CAPTURE on samsung device blurred
我正在使用此代码打开相机意图:
Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePicture.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
startActivityForResult(takePicture, 0);
它工作正常,但只适用于 android 8 的三星设备 (8)
拍照后预览全是模糊的,
有人有这种奇怪的行为吗?
(我也试过没有 putExtra 行)
以下是屏幕截图:
]3
您必须在相机意图中额外提供照片路径 Uri,如:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file = new File(Environment.getExternalStorageDirectory(), mUserID + ".jpg");
Uri photoPath = getUriForFile(mContext, BuildConfig.APPLICATION_ID, file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoPath); //--> here
startActivityForResult(Intent.createChooser(intent, "Complete action using"), REQUEST_CODE_CAMERA);
然后,您可以在 onActivityResult 中获取该 Uri 本身中的捕获图像
我正在使用此代码打开相机意图:
Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePicture.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
startActivityForResult(takePicture, 0);
它工作正常,但只适用于 android 8 的三星设备 (8) 拍照后预览全是模糊的, 有人有这种奇怪的行为吗?
(我也试过没有 putExtra 行)
以下是屏幕截图:
您必须在相机意图中额外提供照片路径 Uri,如:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
File file = new File(Environment.getExternalStorageDirectory(), mUserID + ".jpg");
Uri photoPath = getUriForFile(mContext, BuildConfig.APPLICATION_ID, file);
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoPath); //--> here
startActivityForResult(Intent.createChooser(intent, "Complete action using"), REQUEST_CODE_CAMERA);
然后,您可以在 onActivityResult 中获取该 Uri 本身中的捕获图像