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

Iev*_*ysh 46 webkit ios wkwebview

我使用WKWebView查看自定义HTML.

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

Iev*_*ysh 30

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

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

因为我没有在视图上添加WKWebView对象作为子视图并尝试-loadHTMLString:baseURL:在其上面调用.只有在成功加载后,我才将其添加到视图的子视图中 - 这是完全错误的.我的问题的正确解决方案是:

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

2.呼吁-loadHTMLString:baseURL:最近添加WKWebView

  • 我按照正确的顺序做你说的话,但我仍然得到错误.我注意到它发生的那一刻对我来说似乎很随意...就像有时它发生在我已经解散了拥有WebView的VC之后,有时候它会在我加载时发生...你有没有想过其他的东西出来吗? (4认同)

yus*_*024 8

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

在花了整整一个工作日试图弄清楚什么是错的之后,我发现如果我们有一个名为的框架Preferences,UIWebView并且WKWebView无法打开网页并且会抛出错误.

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

因此,它可能不太可能,但如果您有一个带有名称的框架Preferences,请尝试删除或重命名它.

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

顺便说一下,我在Xcode 9.2上.


Mar*_*kus 6

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


小智 6

在iOS 11的WKWebView中加载“ http” URL时,我也遇到了此问题,它可以与https正常工作。

对我有用的是在info.pist文件中设置应用程序传输设置,以允许任意负载。

<key>NSAppTransportSecurity</key>
    <dict>
        <!--Not a recommended way, there are better solutions available-->
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
Run Code Online (Sandbox Code Playgroud)

  • 这需要按照以下说明在App Store提交中证明理由:https://developer.apple.com/documentation/bundleresources/information_property_list/nsapptransportsecurity/nsallowsarbitraryloads (2认同)

小智 5

调用evaluateJavascript时,我在iOS 12.4上遇到了这个问题。我通过将调用包装起来解决了它DispatchQueue.main.async { }