首先是二维码大小问题,找到
CameraManager类,开头的
private static final int MIN_FRAME_WIDTH = 240;
private static final int MIN_FRAME_HEIGHT = 240;
private static final int MAX_FRAME_WIDTH = 360;
private static final int MAX_FRAME_HEIGHT = 360;
里面数字就是修改二维码框大小。
然后是摄像头前置与后置问题,同样也是在这个类中,找到
这个方法public void openDriver(SurfaceHolder holder)
然后原本是camera = Camera.open();我们把它注释掉然后加上代码
int cameraCount = 0; Camera.CameraInfo cameraInfo = new Camera.CameraInfo(); cameraCount = Camera.getNumberOfCameras(); // get cameras number for (int camIdx = 0; camIdx < cameraCount; camIdx++) { Camera.getCameraInfo(camIdx, cameraInfo); // get camerainfo if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) { // 代表摄像头的方位,目前有定义值两个分别为CAMERA_FACING_FRONT前置和CAMERA_FACING_BACK后置 try { camera = Camera.open(camIdx); } catch (RuntimeException e) { e.printStackTrace(); } } }最后是扫描画面方向问题,找到
CameraConfigurationManager这个类,然后找到这个方法
setDesiredCameraParameters修改其中的setDisplayOrientation(camera, 0);这个方法,其中后面的0就代表画面选择角度
修改你想要的角度就行了。
本文就到这里,若有不对的地方请多多指教。