草庐IT

wkwebview-bridge

全部标签

ios - 在 iOS 中跟踪 WKWebView 线程

我目前正在构建一个iOS10Swift(出于所有预期目的,在此处插入8/9)应用程序,该应用程序广泛使用WebKit的WKWebViews。我希望能够在同一个ViewController中启动并跟踪多个WKWebView(有时甚至在同一屏幕上显示多个WKWebView)现在我有一个非常简单的函数,它初始化WkWebView并打开一个基于Apple文档中显示的用户输入。如果我再次使用该函数,它将使用新的URL初始化一个新的WKWebView。如何跟踪单个WKWebView线程?我想要一个所有正在运行的WKWebViews的列表,这样我就可以在必要时一个一个地关闭它们。当然,我可以为我的函

ios - 停止 WKWebView 重定向到基于通用链接的另一个应用程序

我们正在使用WKWebview来自定义加载和管理我们的ServiceNow实例,但是当登录成功时,如果用户在登录后安装了“ServiceNow”移动应用程序,它会打开ServiceNow应用程序。尝试阻止最终的Url导航操作(decidePolicyfornavigationAction)但没有成功。这是由于ServiceNow端的通用链接而发生的。http://service-now.com/apple-app-site-association在我们这边阻止这个操作的任何方法。 最佳答案 funcwebView(_webView:

javascript - 如何在 WKWebView 中检测 history.pushstate

我使用Swift开发了混合iOS应用程序并希望在WKWebView中检测history.pushstate()。我确实覆盖了WKWebView的方法,但我无法检测到任何东西。有没有办法或技巧来检测history.pushstate() 最佳答案 这当然是一种解决方法,但如果允许您编辑内置对象的属性(就像在大多数浏览器中一样),您可以包装这两个函数并使用拦截处理程序来跟踪它们何时被调用:functiontrack(fn,handler){returnfunctioninterceptor(){handler.apply(this,ar

ios - 在 WKWebView 中使用图像从 HTML 生成 PDF

我正在尝试在我的应用中生成发票PDF。这个想法是可以打印发票,然后生成PDF以稍后通过电子邮件发送。一切正常,包括打印格式,但当我导出为PDF时,PDF中的Logo图像消失了。这是我在WKWebView中的原始HTML这是我的可打印版本但是当我导出为PDF时,它看起来像这样:Logo丢失。我的HTML是这样的:RealengoAvenidaSantaCruz1251Realengo-RiodeJaneiroTelefone:(21)2401-0271CentroRuaBuenosAires111Centro-RiodeJaneiroTelefone:(21)2151-1189有人知道为

ios - Swift 4/5 设置向 WKWebview 添加代理

我一直在寻找一种方法来为WKWebview请求设置代理,但没有成功。另一方面,我已经能够为http请求设置代理funccreateURLSessionConfiguration(_host:String,_port:String)->URLSessionConfiguration{letconfig=URLSessionConfiguration.defaultconfig.requestCachePolicy=URLRequest.CachePolicy.reloadIgnoringLocalCacheDataconfig.connectionProxyDictionary=[Any

Docker网路模型(四)使用 bridge 网络

使用bridge网络在计算机网络中,一个bridge(网桥)是一个链路层设备,负责在不同的网段之间转发信息。bridge可以是真实的硬件设备也可以是由宿主机底层提供的软件模拟设备。在Docker中,bridge网络使用了软件虚拟的网桥,让连接到同一个桥上的容器能互相通讯的同时,也隔离了没有连接到同一个桥上的容器。Docker的bridge网络驱动会自动在宿主机上安装好防火墙规则,隔离开不同网桥之间的直接通讯。bridge网络适用于同一个Dockerdaemon宿主机下的容器,对于不同主机之间的通讯,你可以自己在操作系统层面设置路由规则,或者是用 overlay网络。当你启动Docker的时候,

javascript - 使用 WKWebView iOS 加载本地 HTML/Javascript

我尝试在WKWebView上使用javascript加载本地HTML游戏。虽然我可以看到CSS样式化的HTML页面,但我听不到游戏的任何声音,而且有些游戏的Action不对应。我注意到,如果我通过http实时服务器加载完全相同的游戏,一切看起来都很完美。所以我想本地负载出了问题。也许这是Apache的issue可能是问题所在?信息.plist:NSAppTransportSecurityNSAllowsArbitraryLoads我的代码(SWIFT3):importUIKitimportWebKitclassWebViewController:AppViewController,WK

ios - WKWebView,用于了解 iOS 10 中 DOM 何时准备就绪的委托(delegate)方法

我正在查看WKUIDelegate的文档我看到有一种方法可以知道DOM何时成功关闭。有没有办法知道DOM何时已成功加载,以便我可以开始在JavaScript中与其交互? 最佳答案 您可以使用注入(inject)时间为atDocumentEnd的WKUserScript在加载过程结束时运行JavaScript。然而,一些子资源可能还没有加载,所以如果你想等到最后,你将不得不使用WKNavigationDelegate的didFinish并调用evaluateJavaScript。 关于io

ios - 用于检测 URL 是否已更改的 WKWebView 函数

WKWebView类是否有一个函数允许您检测该WebView的URL是否已更改?在WebView中处理某些元素时,didCommit和didStartProvisionalNavigation函数似乎并不总是触发。编辑:尝试添加通知观察器。到目前为止,这是我所拥有的:extensionNotification.Name{staticletcheckURL=Notification.Name("checkURL")}NotificationCenter.default.post(name:.checkURL,object:nil)NotificationCenter.default.ad

swift - 打印显示在 WKWebView 中的 PDF 文件

我正在尝试从WKWebView进行打印。网页和图像工作正常。只有当我打印PDF文件时,页面都是空白的。这是我用来创建printController的代码:letprintController=UIPrintInteractionController.sharedPrintController()letprintInfo=UIPrintInfo(dictionary:nil)printInfo.outputType=UIPrintInfoOutputType.GeneralprintInfo.jobName=urlField.text!printInfo.duplex=UIPrintIn