Cordova iOS 9上的WKWebView状态?

Ash*_*ain 45 html5 ios cordova hybrid-mobile-app wkwebview

iOS 8引入了WKWebView,这是iOS的现代化Web视图,具有更多功能,特别是Javascript代码的JIT编译,可显着提高性能.

但是iOS 8上的WKWebView存在一些错误,这些错误阻止了Cordova默认使用它.AFAIK有插件可以使用它,但他们都说"beta","不完整"等.另外据我所知,iOS 9修复了阻止Cordova在iOS 8中默认为WKWebView的错误.

那么在iOS 9上的Cordova中WKWebView的状态是什么?我似乎无法找到任何有关此信息.Cordova默认在iOS 9上使用WKWebView吗?如果不是为什么不能,并且可以通过另一种方式正式启用?

jce*_*ile 63

新编辑:2018年8月

Apple已UIWebView在iOS 12 中弃用,可能会在iOS 13中将其删除.

Apache Cordova 宣布将把它集成WKURLSchemeHandlerWKWebView下一个主要版本(5.xx)中,但UIWebView仍然可以使用并成为默认版本.此外,您还可以在运行时在它们之间切换,以轻松测试您的应用程序.在将来的版本中,它将删除整个cordova-plugin-wkwebview-engine代码,这cordova-ios将是唯一的选择.

UIWebView仍然有很多问题.我仍然建议使用cordova-plugin-ionic-webview作为UIWebView解决大多数WKWebView问题的方法.

新编辑:2017年11月

Ionic团队推出了一个新的WKWebView插件,该插件不再是Cordova的一个分支,并在cordova-plugin-wkwebview-engine内部使用并克服了大多数已知的Cordova插件问题.

新编辑:2016年8月24日

更新只是为了添加GCDWebServer由离子框架团队创建的apache 插件的一个分支,它为插件添加了一些增强功能.

https://github.com/driftyco/cordova-plugin-wkwebview-engine

这些增强功能很快就会出现在核心插件上,但你现在可以看一下并测试离子叉.

新编辑:2015年12月9日

科尔多瓦IOS 4.0.0 已经发布 ,并在1.0.0版本WKWebView

尝试一下:

cordova create wkwvtest my.project.id wkwvtest
cd wkwvtest
cordova platform add ios@4
cordova plugin add cordova-plugin-wkwebview-engine
Run Code Online (Sandbox Code Playgroud)

正如我已经说过的,cordova-plugin-wkwebview-engine仅支持iOS 9,在iOS 8上它将使用UIWebView并且有一些已知的问题

如果你也想支持iOS 8,你可以使用Telerik的wkwebview-engine-localhost(实验性)或cordova-plugin-wkwebview,它们都使用本地Web服务器

https://github.com/apache/cordova-plugins/tree/master/wkwebview-engine-localhost

老消息:

您可以使用WKWebView插件使用WKWebView和cordova.

您提到的问题是WKWebView无法加载本地文件,因此插件使用本地Web服务器来解决问题.

有些人喜欢这个来自telerik https://github.com/Telerik-Verified-Plugins/WKWebView(内置网络服务器)或来自cordova团队的官员https://github.com/apache/cordova -plugins/tree/master/wkwebview-engine-localhost(将web服务器作为依赖插件)

由于您提到的错误已修复在iOS 9上,当前的cordova插件(与iOS 8和iOS 9兼容,使用Web服务器)已重命名为wkwebview-engine-localhost,并且当前名称为cordova-plugin-wkwebview-engine将用于仅支持iOS 9的新插件,不会使用Web服务器

您可以在此处查看跟踪进度的问题

https://issues.apache.org/jira/browse/CB-9566

https://issues.apache.org/jira/browse/CB-9567

编辑:我带来新闻https://shazronatadobe.wordpress.com/2015/09/09/apache-cordova-ios-4-0-0-and-wkwebview-support/

WKWebView支持

cordova-plugin-wkwebview-engine插件仅限iOS 9,它将成为核心插件.这个更新的插件的开发仍在进行中.Apple修复了我们无法从file:// urls加载文档的错误,它只是iOS 9.在非iOS 9设备上,cordova-ios将回退使用UIWebView.

此插件的旧版本使用本地Web服务器加载主文档.这个旧的插件可用于你想在iOS 8和iOS 9部署中使用WKWebView的地方,但该插件仍将作为cordova-labs实验.这个插件有一些重新分解的工作要做.