通常无法在 iPhone 上锁定横向

Can't normally lock landscape orientation on iPhone

我正在为 JavaScript 使用屏幕方向 API (https://www.w3.org/TR/screen-orientation/)。 我有以下问题: 当我将 iPhone 转到横向位置时(当按钮在左侧,自拍相机在右侧时)它会正常旋转屏幕,但在我调用 screen.orientation.lock('landscape') 后,它会旋转屏幕并倒置显示屏幕. 它不会发生在 android。在 android 上调用 screen.orientation.lock('landscape') 时,屏幕如预期的那样保持横向模式。 能否请您说一下,如何解决这个问题?

事实证明,这是屏幕方向的已知问题 API。 它甚至在其库的 github 中被提及:https://github.com/apache/cordova-plugin-screen-orientation/issues/42 并且该问题仍未解决。 因此,就我而言,我只是将方向锁定为当前景观,例如如果它是 'landscape-secondary',那么我使用 screen.orientation.lock('landscape-primary')。为什么 'primary'?因为它混淆了,如果你现在在 landscape-secondary 并锁定 landscape-secondary,那么它无论如何都会旋转到 landscape-primary。 所以答案是图书馆的问题。