![c98a04c9b875bc54aa72ac37bb93ef2e.png](https://img-blog.csdnimg.cn/img_convert/c98a04c9b875bc54aa72ac37bb93ef2e.png)
Android 相机打开预览后,可能存在旋转90/180/270度的问题,也会影我们计算预览尺寸,应该怎么处理呢?
由于大部分手机都是旋转了90度,导致很多开发者直接把预览画面转90度回去,出现兼容问题,这是不对的。
预览角度旋转的原因:
(1) 摄像头传感器在安装时就和屏幕竖直方向存在夹角(orientation),大部分手机为90度;
(2) 手机会横竖屏切换,导致手机屏幕的上方向和手机物理的上方向也有一个角度(rotation)。
下面我们看如何恢复画面的预览:
1. 获取相机传感器的安装角度
安装角度是指手机自然状态下的上方向与摄像头的上方向的夹角,方向是从摄像头的上方向逆时针旋转到手机的上方向。
![2f548c3e4913b681e48ec829606fe880.png](https://img-blog.csdnimg.cn/img_convert/2f548c3e4913b681e48ec829606fe880.png)
Camera1:
fun getCameraOrientation(cameraID: Int): Int {