gpt4 book ai didi

ios - mediaTypesRequiringUserActionForPlayback 不工作 swift

转载 作者:行者123 更新时间:2023-11-28 12:11:09 30 4
gpt4 key购买 nike

我正在开发一个应用程序,它可以在 Swift 中使用 WKWebView 访问网页。该网站开始自动播放声音。我不想让声音自动播放。我想使用类似 mediaPlayBackRequieresUserAction = true 的东西,但它不适用于 WKWebView。

我正在尝试类似的东西

webConfiguration.mediaTypesRequiringUserActionForPlayback = []
webConfiguration.mediaTypesRequiringUserActionForPlayback = .all
webConfiguration.mediaTypesRequiringUserActionForPlayback = WKAudiovisualMediaTypeAll

但它不起作用,Xcode 正在向我展示:

Cannot assign value of type '[WKAudiovisualMediaTypes].Type' to type 'WKAudiovisualMediaTypes'

自动引起音频声音的元素是:

<audio src="audio/alarm.mp3" preload="auto" loop="true" class="alarm mp3" type="audio/mp3"></audio>
<audio src="audio/alarm2.mp3" preload="auto" loop="true" class="urgent alarm2 mp3" type="audio/mp3"></audio>

这是我的 WKWebView 代码:

    import UIKit
import WebKit

class WidgetViewController: UIViewController, WKNavigationDelegate, WKUIDelegate {

var webView : WKWebView!

override func viewDidLoad() {
super.viewDidLoad()

let url = URL(string: "https://danfg95glucose.azurewebsites.net/")
let request = URLRequest(url: url!)

let webConfiguration = WKWebViewConfiguration()
webConfiguration.allowsInlineMediaPlayback = false
webConfiguration.mediaTypesRequiringUserActionForPlayback = []

webView = WKWebView(frame: CGRect( x: 0, y: 0, width: self.view.frame.width, height: self.view.frame.height - 500 ), configuration: webConfiguration)
webView.navigationDelegate = self
webView.load(request)
self.view.addSubview(webView)
}
}

对不起我的错误,我是新手,我正在学习编程。非常感谢您的每一个回复。

最佳答案

你只需要设置一次mediaTypesRequiringUserActionForPlayback。这应该有效。

webConfiguration.mediaTypesRequiringUserActionForPlayback = .all

您可以改为将其限制为仅音频

webConfiguration.mediaTypesRequiringUserActionForPlayback = .audio

关于ios - mediaTypesRequiringUserActionForPlayback 不工作 swift ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48504127/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com