问题标签 [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.

0 投票
2 回答
1499 浏览

ios - 来自 URL 的 PDF 在 WKWebView 中未正确显示?

我可以将 HTML 页面、YouTube 视频等加载到此 WKWebView 中并正确显示,但 PDF 会为整个视图着色,在底部被裁剪,并在向上滚动时覆盖导航栏的背景。我希望 PDF 仅显示在导航栏下方的安全区域中。

这是我的代码:

我试过添加

这个 Stack Overflow 答案,它并没有帮助。

以下是我看到的问题的屏幕截图:

到处都是深色背景

PDF 在底部截断并覆盖导航栏背景

请帮忙!谢谢!

0 投票
2 回答
8663 浏览

ios - Ionic 3 响应状态:0 对于 URL:null

我有一个 Ionic 3 应用程序。我最近添加了iOS平台。

当我在 iOS(模拟器和设备)上运行它时,所有具有标头的服务器请求都失败,并出现错误“Response with status: 0 for URL: null”。在 Android 上,这些请求可以正常工作。

如果我在没有标头的情况下执行请求,我会从服务器获得预期的响应。

我知道问题出在WKWebViewCORS上。服务器已正确配置 CORS。我用@angular/http模块来做请求。

让我们看一些代码。

这是我向服务器发出请求的提供者:

另一方面,我决定尝试使用 @ionic-native/http 模块(正如您在导入中看到的那样)以避免 WKWebView 和 CORS 问题,但是当我用它发出请求时,我收到了这个错误:

这就是我使用本机插件执行请求的方式:

这是我的 app.module.ts 的一个片段:

我希望有人能给我一些启示,因为我迷失在 Ionic 的道路上。

谢谢你。

0 投票
0 回答
1633 浏览

ios - 操作无法完成。(NSURLErrorDomain 错误 -999。)

投掷

“操作无法完成。(NSURLErrorDomain 错误 -999。)”

WKNavigationDelegate方法错误webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error)

每次我尝试加载 html 字符串时。

0 投票
1 回答
250 浏览

wkwebview - WKWebView 属性“plugInsEnabled”:它对哪里有好处?

WKWebView控件具有作为所述控件的属性的plugInsEnabled一部分的preferences属性configuration。该文档指出:

一个布尔值,指示是否启用插件。

显然,纪录片作者也不知道。我找不到此设置的任何其他文档。

有人知道这个设置到底是做什么的吗?

0 投票
2 回答
2898 浏览

ios - WKWebview getAllCookies 在 iOS 11.3 中崩溃

我们最近迁移到了 WKWebview。我们为 cookie 更改添加了一个监听器,以获取更新的 cookie 并更新我们自己的商店。

加载控制器后,它会调用 cookiesDidChangeInCookieStore 并在“getAllCookies”处崩溃。但这种崩溃仅发生在 TestFlight/Fabric 构建中。当我从 xcode 直接在设备上运行应用程序时(在调试和发布模式下)不会发生。以下是崩溃报告,

调用 getAllCookies 时似乎存在溢出。这仅在 iOS 11.3 中发生。

0 投票
3 回答
1670 浏览

swift - 如何在不同的 WKWebViews 上使用相同的 cookie

在用户在第一个 WebView 上获得授权后,我需要在第二个 WebView 上使用相同的配置(cookie)。在模拟器上运行良好,但在设备上不稳定。

0 投票
1 回答
570 浏览

ios - 在 WKWebView 中检测 Youtube 播放按钮操作

如何检测在 youtube 中单击的播放按钮的动作wkwebview,我已经完成了这个问题,它与我的问题有些相似,但没有重复和未回答。

任何帮助将不胜感激。

谢谢。

0 投票
0 回答
52 浏览

ios - 使用 WKWebKit 自动化网页抓取

我正在抓取一个需要多个步骤的站点,并且每个 JavaScript 行都需要在 webview 加载完成后运行。到目前为止,我只是在页面加载时通过按下按钮手动执行此操作。第一行完成后如何进行下一步。

我在 WKWebKit 文档中没有找到任何 onComplete 函数或类似的函数。

当我尝试将代码放入完成处理程序时,它会立即执行。

如果有人知道如何解决此问题,我将不胜感激。谢谢 :)

0 投票
1 回答
811 浏览

macos - 如何阻止 WKWebView 创建过多进程?

我有一个 MacOS 应用程序,它创建了许多不同类型的 NSViews,其中一些包含 WKWebViews。WKWebViews 的数量可以变得相当大(几十个或更多)。

问题是这些 WKWebView 中的每一个都创建了多个进程,这在 Activity Monitor 中很容易看到。当进程数过多时,整个系统本质上会陷入死机:运行中的应用程序仍然运行缓慢,但无法启动新应用程序,Finder 停止工作,必须重新启动系统。

所以我正在寻找一种方法来控制 WKWebViews 启动的进程数。

根据 Apple 文档,这是由 WKWebView 的 processPool 属性管理的,因为它们声明:“与 Web 视图关联的进程池由其 Web 视图配置指定。每个 Web 视图都有自己的 Web 内容进程,直到实现 -达到定义的进程限制;之后,具有相同进程池的 Web 视图最终共享 Web 内容进程。” (来自页面:https ://developer.apple.com/documentation/webkit/wkprocesspool?language=objc )。

我无法弄清楚如何定义“实现定义的流程限制”。当我 NSLog WKWebView 配置的描述时,我得到这个:

WKWebView 配置说明:

>; 偏好=>

我可以看到有一个 processPool 和它的配置(称为 _WKProcessPoolConfiguration),以及一个称为 maximumProcessCount 的值,它设置为 0。我假设 0 表示进程计数是无限的,我想将其设置为合理的数量。但我不知道如何设置这个值!processPool 本身没有属性,所以我不知道如何访问这个 maximumProcessCount 值。

任何帮助是极大的赞赏。

0 投票
1 回答
521 浏览

ios - WKWeb View 是否在 swift iOS 中完成页面加载?

我创建了一个WKWebView。它加载 MSB 的 url,即。我学校的钱。它加载了几乎所有的付款网址。但是在一个 url didFinishLoad没有被调用。我已经为网络视图添加了所有代表。但它肯定不起作用。整个过程在 iPhone 的网络浏览器中运行良好。

下面是我在下面添加的代码

导航的委托方法