我一直在尝试使用swift并想尝试wkwebview。我构建了一个应用程序并且一切正常但问题是我加载到我的wkwebview的网页使用谷歌地图并需要位置服务,因此javascript应该提示一条消息说“这个应用程序需要你的位置信息”。swift应用程序wkwebview不显示任何消息也不显示我的谷歌地图。如果我使用safari浏览器访问url,它会提示位置消息,并且在ios7上的uiwebview中也会提示该消息。还有其他人遇到这个问题并知道解决方案吗? 最佳答案 在iOS8中,您需要在Info.plist中有一个key,系统可以使
我试图在我的Mac应用程序中为WKWebView设置自定义UserAgent。不幸的是,指定的自定义字符串永远不会被设置。使用iOSSDK这不是什么大问题NSUserDefaults.standardUserDefaults().registerDefaults(["UserAgent":"CustomAgent"])但是对于MacSDK它不起作用。我也试过了leturl=NSURL(string:startURL)letreq=NSMutableURLRequest(URL:url!)req.setValue("CustomAgent/1.0",forHTTPHeaderField:
您好,我现在正在使用Swift3开发iOS10。我的方案是使用WKWebView自动播放内嵌的YouTube视频。按照AppleDevDocs的建议,我将配置的mediaPlaybackRequiresUserAction设置为false以启用视频自动播放。但是这个配置似乎不起作用,视频加载正确,但你必须按下播放按钮才能真正播放。有什么想法吗?谢谢:)letconfig=WKWebViewConfiguration()config.requiresUserActionForMediaPlayback=falseconfig.allowsInlineMediaPlayback=truel
我有一个非常简单/简单的问题,但对java的经验绝对为零。我有一个WKWebView,我想使用javascriptdocument.getElementById获取页面的标题文本。我试图从中获取标题的网页具有以下代码:Schedules此代码已被删节,因此对于任何错误我深表歉意。然后我尝试使用Swift访问pageTitle:funcwebView(webView:WKWebView,didFinishNavigationnavigation:WKNavigation!){webView.evaluateJavaScript("document.getElementById('page
我已将WKWebView底部约束设置为superView,但它不会显示直到superView,而是显示内容直到安全区域。这是显示底部未正确填充的问题图像。这是View和约束图像的层次结构以及使用容器View设置WebView约束的代码letwv=WKWebView(frame:containerView.frame,configuration:wvConfig)webView=wvcontainerView.addSubview(wv)//setupconstraintswv.translatesAutoresizingMaskIntoConstraints=falseif#avail
我有一个在模拟器中完美运行的WKWebView但为什么在设备中运行时只出现一个白色的空屏幕这是我的代码:overridefuncloadView(){letwebConfiguration=WKWebViewConfiguration()webConfiguration.preferences.setValue(true,forKey:"allowFileAccessFromFileURLs")webView=WKWebView(frame:.zero,configuration:webConfiguration)webView.uiDelegate=selfview=webView}
我正在尝试加载WKWebView,但我的模拟器(iPhone6-iOS10.2)一直显示空白屏幕。我只能看到水平和垂直滚动条,就好像webview很宽但是是空的。AppTransportSecuritySettings>AllowArbitraryLoads在info.plist文件中设置为YES。这是我的代码importUIKitimportWebKitclassViewController:UIViewController,WKUIDelegate{varwebView:WKWebView!overridefuncloadView(){letwebConfiguration=WKW
在应用程序启动时我正在加载https://www.google.com在WKWebView中。应用程序有一个按钮,单击该按钮应用程序将从文档目录加载本地html页面。我使用以下代码加载html页面。letdestPath=NSSearchPathForDirectoriesInDomains(.documentDirectory,.userDomainMask,true)[0]letfileName="Demo.html"letfullDestPath=URL(fileURLWithPath:destPath).appendingPathComponent(fileName)self.
据我所知,WKWebView中加载的所有资源的缓存是默认设置的。有几篇关于HowtoremovecachedresourcesfromWKWebView?的帖子,但我找不到任何关于如何从WKWebView中获取它的帖子。例如,当我使用WKWebView加载thisurl时,它显示一个pdf文件,我想要的是从WKWebView获取这个pdf文件,以便在url完全加载后共享我在Chrome上检查过,如果我想从上面的链接共享文件,它会在显示共享对话框后再次从url请求和下载内容。这意味着他们无法从当前的WKWebView(缓存的资源)中获取它。但在Safari上,不知何故,他们在点击分享按钮
TL;DR:我有一个带有WKWebView的iOS(Swift)项目。我想向此WKWebView中的所有传出请求(html、图像、脚本、样式表等)添加请求header。我不知道该怎么做。背景:我有一个SwiftiOS应用程序,它使用WKWebView来呈现它的htmlView。这些View托管在我们的服务器上,服务器分为生产环境和暂存环境。我使用Akamai设置了暂存环境,以便所有传入请求都必须传递请求header,以便请求被接受。问题:目前,我已经创建了一个WKWebView的子类,它覆盖了loadRequest方法,它看起来像这样:overridefuncloadRequest(r