三星设备上的ACTION_IMAGE_CAPTURE模糊

问题描述 投票:1回答:1

我正在使用此代码打开相机意图:

Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePicture.putExtra(MediaStore.EXTRA_SCREEN_ORIENTATION, ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
startActivityForResult(takePicture, 0);

它工作正常,但只有三星设备(8 \ 9)与Android 8后我拍照预览是模糊的,任何人都有这种奇怪的行为?

(我也试过没有putExtra线)

以下是截图:

before

after[![][1]] 3

android android-camera samsung-mobile
1个回答
1
投票

你必须给照片路径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中捕获的图像

© www.soinside.com 2019 - 2024. All rights reserved.