android camera2中的手动对焦

android camera2中的手动对焦,android,camera,camera2,Android,Camera,Camera2,我正在寻找android中camera2的手动对焦示例。 我试图获得最小焦距和可用焦距,如下所示,但没有帮助。如何控制焦距 float minimumLens = characteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE); float[] lensDistances = characteristics.get(CameraCharacteristics.LENS_INFO_AVAILABLE_FOCA

我正在寻找android中camera2的手动对焦示例。 我试图获得最小焦距和可用焦距,如下所示,但没有帮助。如何控制焦距

float minimumLens = characteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);

float[] lensDistances = characteristics.get(CameraCharacteristics.LENS_INFO_AVAILABLE_FOCAL_LENGTHS); 
我需要用seekbar控制它。 提前谢谢

 switch (seekBar.getId()) {
            case R.id.sb_focus:
                float minimumLens = mCameraCharacteristics.get(CameraCharacteristics.LENS_INFO_MINIMUM_FOCUS_DISTANCE);
                float num = (((float) i) * minimumLens / 100);
                mPreviewBuilder.set(CaptureRequest.LENS_FOCUS_DISTANCE, num);
                int showNum = (int) num;
                mSeekBarTextView.setText("focus:" + showNum);
                break;}
小心,控制AF模式应该关闭。


第1109行的代码

单个区域的手动对焦如何?@yydcddut:不幸的是,这个解决方案在三星Galaxy S7上不起作用。虽然我还没有在任何其他三星手机上试用过,但我强烈怀疑大多数三星手机都会遇到这个问题。为了将来的读者,我相信您需要的示例代码:mPreviewBuilder.set(CaptureRequest.LENS\u FOCUS\u DISTANCE,minimumLens);目前还不清楚num到底是什么,但它与焦距的百分比有某种联系,可能是针对seekBar的。“i”变量是什么?@SebastienFerrand“i”是seekBar的进度