com.apple.WebKit.WebContent丢弃113错误:找不到指定的服务

时间:2017-06-16 09:41:00

标签: ios webkit wkwebview

我正在使用 WKWebView 来查看自定义HTML。

  • 无论HTML内容如何,​​在真实设备上进行测试时,在 WKWebView 内容加载后29秒内收到以下错误Could not signal service com.apple.WebKit.WebContent: 113: Could not find specified service,有时我甚至会收到此错误两次。显然,这是一个配置问题。我已根据Could not signal service com.apple.WebKit.WebContent中的建议检查了Cookie,但它没有帮助
  • 另一个问题是,是否存在可能在 WKWebView
  • 中弹出的所有错误代码的列表

12 个答案:

答案 0 :(得分:28)

最后,解决了上面的问题。我收到了错误

  • Could not signal service com.apple.WebKit.WebContent: 113: Could not find specified service

由于我没有在视图中添加 WKWebView 对象作为子视图,并尝试在其顶部调用-loadHTMLString:baseURL:。只有在成功加载之后,我才会将其添加到查看的子视图中 - 这是完全错误的。我的问题的正确解决方案是:

1。添加 WKWebView 对象以查看subviews数组

2。为最近添加的 WKWebView

致电-loadHTMLString:baseURL:

答案 1 :(得分:5)

我在加载http:// URL时遇到此错误,其中服务器回复了重定向到https。更改URL后,我将WKWebView传递给https:// ...它有效。

答案 2 :(得分:5)

也许这是一个完全不同的情况,但是在连接调试器的同时在模拟器上打开网页时我总是WebView[43046:188825] Could not signal service com.apple.WebKit.WebContent: 113: Could not find specified service 。如果我结束调试器并再次打开应用程序,网页将打开就好了。这不会发生在设备上。

在花了整整一个工作日试图找出错误之后,我发现如果我们有一个名为Preferences的框架,UIWebViewWKWebView将不会能够打开一个网页并抛出上面的错误。

要重现此错误,只需使用WKWebView创建一个简单的应用即可显示网页。然后创建一个新的框架目标并将其命名为Preferences。然后将其导入主目标并再次运行模拟器。 WKWebView无法打开网页。

所以,它可能不太可能,但是如果你有一个名为Preferences的框架,请尝试删除或重命名它。

此外,如果有人对此有解释,请分享。

BTW,我在Xcode 9.2上。

答案 3 :(得分:4)

在iOS 11中加载 WKWebView 中的“http”网址时,我也遇到了这个问题,它可以正常使用https。

对我有用的是在info.pist文件中设置App传输设置以允许任意加载。

FilteredsearchString

答案 4 :(得分:1)

我的情况再次与众不同。我像这样设置用户代理:

<script src="https://unpkg.com/vue@2"></script>

<div id="app">
  <select>
    <option v-for="value in [0, 1, 2, 3]">{{value}}</option>
  </select>
</div>

这导致网页上出现异常情况并泄漏内存。不知道为什么,但删除这个为我排序的问题。

答案 5 :(得分:0)

<强> SWIFT

我按照以下顺序执行了此操作,之后没有收到Could not signal service com.apple.WebKit.WebContent: 113: Could not find specified service之类的错误,以下代码也可能对您有所帮助。

webView = WKWebView(frame: self.view.frame)
self.view.addSubview(self.view.webView)
webView.navigationDelegate = self
webView.loadHTMLString(htmlString, baseURL: nil)

按顺序进行。

由于

答案 6 :(得分:0)

就我而言,我正在启动WKWebView并显示一个网站。然后(在25秒内)我重新分配了WKWebView。但是启动WKWebView后25-60秒,我收到此“ 113”错误消息。我以为系统正在尝试向WKWebView发出信号,但找不到,因为它已被释放。

解决方法只是保留WKWebView分配。

答案 7 :(得分:0)

如果将其设置为

,可能是以下方法引起的
func webView(_ webView: WebView!,decidePolicyForNavigationAction actionInformation: [AnyHashable : Any]!, request: URLRequest!, frame: WebFrame!, decisionListener listener: WebPolicyDecisionListener!) 

结尾
decisionHandler(.cancel)

默认navigationAction.request.url

希望它能起作用!

答案 8 :(得分:0)

在OS X上,必须确保正确设置了沙箱功能才能使用WKWebView。

此链接使我很清楚: https://forums.developer.apple.com/thread/92265

分享希望能对某人有所帮助。


在导航器中选择项目文件,选择功能,然后确保:
*应用沙箱已关闭,

*“应用程序沙箱”已启用,并且“呼出连接(客户端)”已选中。

答案 9 :(得分:0)

仅供其他参考,如果我尝试加载一个末尾带有空格(从用户输入中拉出)的URL,我似乎也有这个问题。

答案 10 :(得分:0)

在我调用iOS时,我在iOS 12.4中遇到了这个问题。我通过将通话包装在DispatchQueue.main.async { }

中解决了该问题

答案 11 :(得分:0)

删除/评论

- (void)viewWillAppear:(BOOL)animated {[super viewWillAppear:YES];}

功能为我解决了问题。

XCode(11.3.1)