私が直面している問題は、ユーザーが私たちのアプリで を使用して写真を撮るときAVCaptureSession
に、写真を縦向きモードで撮ったか横向きモードで撮ったかを判断する方法がないことです。私たちのアプリはポートレートのみをサポートし、携帯電話を使用するときは方向ロックをオンにしておくので、他の人が同じことをする可能性があると仮定してソリューションを構築しようとしています.
使用してみまし[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications]
たが、方向ロックがオンになっていると、通知が届きません。この機能が可能なのは、携帯電話の方向ロックがオンになっているときに、ベースのカメラ アプリと Google ハングアウト アプリのカメラが回転を検出できるためです (キャンセル ボタンとフラッシュ ボタンのアニメーションは明らかです)。
加速度計を使用して、電話が回転している角度を検出するのが最善の策ですか? 古い答えDetect iPhone screen orientationは、その方法で角度を検出するのが簡単であることを非常に明白にします (明らかに、UIAccelerometer の代わりに Core Motion を使用するように答えを適応させます)。それ。