我正在尝试播放嵌入iOS原生应用程序的内联视频。
无论我做什么,一旦播放视频,播放器就会自动进入全屏。
我尝试了所有提到的建议,如playsinline
、allowfullscreen="false"
、controls="false"
等。
有没有办法阻止iOS网络视图进入全屏?
您可以通过代码中的配置,使用WKWebViewConfiguration和allowsInlineMediaPlayback:,在iOS web视图中启用在线播放
- https://developer.apple.com/documentation/webkit/wkwebviewconfiguration/1614793-allowsinlinemediaplayback
将此属性设置为true以联机播放视频,或设置为false以使用本机全屏控制器。在iPhone上将视频元素添加到HTML文档时,还必须包含playsinline属性。此属性的默认值对于iPhone为false,对于iPad为true。
您可以在此答案中看到一个示例:https://stackoverflow.com/a/59834721/334402
Swift 5.5
你只需要allowsInlineMediaPlayback = true
class WebViewConfigurator {
private var _webViewConfig = WKWebViewConfiguration()
var webKitConfig : WKWebViewConfiguration {
_webViewConfig
}
init() {
_webViewConfig.allowsInlineMediaPlayback = true
}
}