不同手机上的前置摄像头旋转不一样

时间:2018-10-08 12:51:37

标签: android camera

我正在使用以下代码在设备上安装前置摄像头

    private Camera getFrontCamera() {
    int cameraCount = 0;
    Camera camera = null;
    Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
    cameraCount = Camera.getNumberOfCameras();
    for (int camIdx = 0; camIdx < cameraCount; camIdx++) {
        Camera.getCameraInfo(camIdx, cameraInfo);
        if (cameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
            try {
                camera = Camera.open(camIdx);
                camera.setDisplayOrientation(90);
            } catch (RuntimeException e) {
                e.printStackTrace();
            }
        }
    }
    return camera;
}

一切正常,但是当我在SurfaceView中预览相机时,在不同手机上的旋转方式会不同。

当我使用Samsung s7setDisplayOrientation(90)上运行代码时,相机预览应该是应该的,但是在Xiaomi上,手机预览会旋转180度。 当我在Xiaomi mi5上运行setDisplayOrientation(270)并在Xiaomi上运行代码时,Samsung旋转了180度。

有人可以告诉我如何使其在所有设备上都能正常工作吗?

谢谢

0 个答案:

没有答案