【发布时间】:2023-04-01 23:05:01
【问题描述】:
在我的应用程序中,我打开相机让用户为文字拍照。不幸的是,自动对焦根本不起作用,而且s7上的图片非常模糊。我也不是很了解代码,因为我只是复制了它。请在下面找到代码:
mCamera = getCameraInstance();
Camera.Parameters params = mCamera.getParameters();
params.setFocusMode(Camera.Parameters.FOCUS_MODE_MACRO);
//params.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
Camera.Size desiredSize = getPictureSize(params.getSupportedPictureSizes());
System.out.println(desiredSize.width);
params.setPictureSize(desiredSize.width, desiredSize.height);
mCamera.setParameters(params);
mPreview = new CameraPreview(this, mCamera);
FrameLayout preview = findViewById(R.id.camera_preview);
preview.addView(mPreview);
rotation = CameraPreview.correctCameraDisplayOrientation(MainActivity.this, mCamera);
apiInterface = RetrofitInstance.getRetrofitInstance().create(ApiInterface.class);
Bundle extras = getIntent().getExtras();
if(extras!=null){
Uri imgUri = account.getPhotoUrl();
new ImageLoadTask(imgUri, toolbar).execute();
}
// }
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
// Associate searchable configuration with the SearchView
SearchManager searchManager =
(SearchManager) getSystemService(Context.SEARCH_SERVICE);
SearchView searchView =
(SearchView) menu.findItem(R.id.action_search).getActionView();
searchView.setSearchableInfo(
searchManager.getSearchableInfo(getComponentName()));
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// searchView.getSuggestionsAdapter().setDropDownViewTheme(this.getTheme());
// }
return true;
}
private Camera.Size getPictureSize(List<Camera.Size> sizes) {
for (Camera.Size size : sizes) {
if ((size.width * size.height) / 1024000 <= 2.5) {
return size;
}
}
return null;
现在有人知道这里的问题是什么吗?我非常感谢任何形式的帮助!
【问题讨论】:
-
“自动对焦根本不起作用,图片在 s7 上非常模糊”:你的意思是在其他设备上同样的应用也能正常工作吗?
-
请理解使用 Android 相机并非易事。考虑使用一些为您包装它的库,例如fotoapparat。
-
感谢分享图书馆。是的,这些应用程序在 HTC 手机上运行良好。不过,在 S8 上,相机也很模糊。所有设备均运行 Android 8.0
-
如果您只需要偶尔捕捉一次图片,并且每个设备都可以制作出最佳质量,请考虑delegating this task to the Camera app。这种方法有其局限性和警告。直到最近,该文档的标题为“简单地拍照”。我很高兴它已被重命名。
标签: android camera autofocus blurry