我正在使用
Intent(MediaStore.ACTION_IMAGE_CAPTURE)
要从相机获取照片,它在所有设备上都能正常工作,除了三星设备,如果你用正面相机拍照,它会旋转180度。
我可以将图像旋转180度以纠正前置摄像头的问题,但这也会导致后置摄像头照片也旋转。
有什么方法可以检测出哪张相机正在拍照,因此只能旋转前置相机的图像?
答案 0 :(得分:0)
它适用于所有设备
没有冒犯,但我对此表示怀疑。有一个很多的有缺陷的相机应用程序。请记住,其中一些有缺陷的相机应用程序是用户安装的,而不仅仅是预先安装。
有什么方法可以检测到哪张相机正在拍照
不是真的。我没有看到an EXIF tag,并且没有要求相机应用程序无论如何都将标记放在图像中。除了图片本身之外,您不会被告知有关图片的任何细节。您可以尝试玩一些游戏,查看图像分辨率并将其与可能的相机分辨率进行比较,但这将是不可靠的。
一般情况下,对于ACTION_IMAGE_CAPTURE
,你最终只能获得不稳定的结果。您的主要替代方案是使用库将照片捕获嵌入到您的应用中(例如,CameraKit-Android,Fotoapparat),利用设备制造商相机API支持的不可靠性来弥补第三方相机应用程序的不可靠性。