我在iPad上的iOS8上运行了WKWebView应用程序(标准iPad UserAgent:“Mozilla / 5.0(iPad; cpu OS 8_1_1,如Mac OS X)AppleWebKit / 600.1.4(K
HTML,像Gecko)版本/ 8.0 Mobile / 12B436 Safari / 600.1 0.4\” ).我已经尝试了所有的代理和听众,我可以想到,尝试检测页面何时加载完成.这是问题:
>打开您的WKWebView并转到Google.以下称为:
_decidePolicyForNavigationAction _didStartProvisionalNavigation _ didFinishNavigation
>在Google中输入“YouTube”:
只有_decidePolicyForNavigationAction被调用.没有做过创新导航或没有完成导航
>在Google中点击YouTube.以下称为:
_didStartProvisionalNavigation _decidePolicyForNavigationAction _ didFinishNavigation
>从现在开始,YouTube内没有任何东西被调用.点击一个YouTube视频,没有doStartProvisionalNavigation或didFinishNavigation.此外,不再调用webview.loading观察器.甚至决定PolicyForNavigationAction只是随时被调用.无论如何…每次点击之后,webView.backForwardList.currentItem都会被更新,所以必须检测页面何时完成加载?
这种行为也发生在许多其他网站上(例如Vimeo).我知道这种类型的网站每次都没有更新主框架,但是当这种状态下WKWebView的加载启动/完成“限制”时,是否缺乏检测能力?
我想要实现的是:还有另一种方法来检测导航是否完成,每个时间在Java移动网站,如YouTube / Vimeo:
>使用NSURLProtocol或类似?
>或者可能是一种检测何时的方法
webView.backForwardList.currentItem是否更新?
感谢任何帮助.