我在 SwiftUI 视图内的 WKWebView 中播放 youtube 视频(嵌入 url)时遇到问题。
这是我的 SwiftUI WebView 代码
import SwiftUI
import UIKit
import WebKit
struct WebView: UIViewRepresentable {
let url: String
func makeUIView(context: Context) -> WKWebView {
let webViewConfig = WKWebViewConfiguration()
webViewConfig.mediaTypesRequiringUserActionForPlayback = .all
webViewConfig.allowsInlineMediaPlayback = true
return WKWebView(frame: .zero, configuration: webViewConfig)
}
func updateUIView(_ view: WKWebView, context: UIViewRepresentableContext<WebView>) {
view.load(request)
}
}
Run Code Online (Sandbox Code Playgroud)
我像这样使用这个WebView Webview(url: "YOUTUBEEMBEDVIDEOURLHERE"),重点如下,第一次进入屏幕并点击播放按钮,url呈现一切都非常好,此时,我回去(使用NavigationView)并进入相同的再次屏幕并再次单击播放视频,然后我崩溃了。
崩溃信息
Error acquiring assertion: <Error Domain=RBSAssertionErrorDomain Code=3 "Required target entitlement is missing" UserInfo={RBSAssertionAttribute=<RBSDomainAttribute| domain:"com.apple.webkit" name:"Background" sourceEnvironment:"(null)">, NSLocalizedFailureReason=Required target entitlement …Run Code Online (Sandbox Code Playgroud)