问题标签 [wkwebviewconfiguration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何检查 WkWebView 是否在 Objective-C 中完成加载?
我想使用 WkWebView 加载 HTML 页面,并且我想在页面加载完成后显示该页面。只要它正在加载,我想在空视图上显示一个活动指示器。我创建了两个视图,一个 loadingView 和一个 wkWebView。在页面加载时,我将加载视图作为子视图添加到 VC,并且在我想删除加载视图并添加 wkWebView 之后。这是我的代码:
有人可以告诉我如何在加载时检查以及是否完成刷新 VC?谢谢您的回答。
ios - 使用多个 WKWebView 可以像重用同一个 WebView 一样快吗
当我为新导航重用相同的 WKWebView 时,我的应用程序要快得多(但我希望能够为每个导航创建新的 WKWebView,以便我可以维护一个 ViewController 堆栈)。
但是,我注意到,当我为每个页面创建一个新的 WKWebView 时,页面加载速度较慢。不知何故,Safari(在新选项卡中打开链接)似乎在做同样的事情(如果我通过 Xcode 检查,我会看到每个选项卡都有一个新的 WebContent 进程),但它的速度仍然与在相同的网页视图。
除了使用相同的进程池之外,我还能做些什么来加快在新 WKWebView 中加载的页面的加载时间?
webkit - 同一个应用程序中的多个 WKWebView 实例可以有单独的 cookie 存储吗?
我的应用程序中有几个WKWebViews
。我不希望在它们之间共享 cookie/auth。WKProcessPool
我尝试使用和的单独实例WKWebViewConfiguration
来初始化另一个 webview。它不起作用。我究竟做错了什么?
ios - WKWebView Cookie
我正在使用下面提到的方法在 a 中设置 cookie WKWebview
:
我可以将 cookie 设置为由 WKWebView 使用吗?
但是我设置的 cookie 在 AJAX 调用中被复制了。我的意思是它们被重复了两次。
这是我使用的代码片段:
getCookieString
是一种将 cookie 值作为NSString
- 将
WKWebView
cookie设置回NSHTTPCookieStorage
运行时(在AJAX调用期间) - 我可以使用任何委托方法控制 AJAX 调用 cookie 吗?
以下是我的getCookieString
category( NSHTTPCookie (CookieObject)
) 方法
ios - 更新 WKWebView Cookie 值
我的要求是更新设置为WKWebView
. 我可以更新 cookie NSHTTPCookieStorage
,但相同的 cookie 不会反映到WKWebView
cookie(更新值存在NSHTTPCookieStorage
但未设置为WKWebView
)
以下是我用来将该 cookie 设置为 AJAX 调用的代码。
更新 cookie 后,我尝试在我的 NSHTTPCookieStorage 中打印现有的 cookie,它显示了更新的值。
我还尝试在更新 cookie 后打印脚本WKNavigationDelegate
,但它显示旧值。
ios - wkwebview requiresUserActionForMediaPlayback 不起作用
我有一个wkwebview
进入 youtube 的视频,我想点击一个视频,但它不会自动将我扔到视频播放器中。
我尝试以 3 种不同的方式阻止它
- 使用
config.requiresUserActionForMediaPlayback = true
- 在
decidePolicyForNavigationAction
委托功能中,我检查是否存在 youtube 视频并设置decisionHandler(WKNavigationActionPolicy.Cancel)
- 我还在
webView.stopLoading()
#2 中添加了一个
尽管如此,点击链接仍然会触发视频自动开始播放。
我没主意了;有什么想法吗?
我知道我可以尝试注入一些javascript,但这对我来说似乎是最后的手段。
ios - 对请求使用共享的 WKWebViewCookies
我的项目中有几个不同的 WKWebView,它们都通过单个 WKProcessPool 共享 cookie。
现在我想在 REST API 上发出请求,并且需要将该 cookie 从该 WKWebViews 准确发送到该 API。有没有办法得到饼干?我得到的一切都是来自的 cookie,NSHTTPCookieStorage
但它们似乎与我在 WKWebView 中使用的 cookie 并不同步。或者甚至有可能提出使用 WKProcessPool 的请求?
ios - WKWebView 只显示桌面站点
我刚刚从 UIWebView 迁移,我的新 WKWebView 将只显示我正在加载的站点的桌面版本。我的 UIWebView 适当地显示了响应式站点。
我尝试强制移动用户代理并确认它正在进入服务器
有没有人有我可以尝试的其他想法?谢谢