- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
iOS 8 引入了 WKWebView,这是一种适用于 iOS 的现代化 Web View ,具有更多功能,特别是对 Javascript 代码的 JIT 编译显着提高了性能。
然而,iOS 8 上的 WKWebView 存在一些错误,导致 Cordova 默认无法使用它。据我所知,有一些插件可以使用它,但它们都说“测试版”、“不完整”等。另外据我所知,iOS 9 修复了阻止 Cordova 在 iOS 8 中默认为 WKWebView 的错误。
那么WKWebView在iOS 9的Cordova中是什么状态呢?我似乎无法找到有关此的任何信息。 Cordova 是否默认为 iOS 9 上的 WKWebView?如果不是,为什么不,是否可以通过其他方式正式启用它?
最佳答案
新编辑:2019 年 6 月
Apple 并未在 iOS 13 beta 中删除 UIWebView
,因此看起来它至少可以再使用一年。
Ionic WebView 插件,从版本 3.0.0 开始不再使用网络服务器,而是使用 WKURLSchemeHandler
,这需要放弃对 iOS 10 及更早版本的支持。
仍然向后移植大多数修复到 2.x 分支,该分支仍然有那些想要支持 iOS 10 的网络服务器。
WKWebView 没有集成到 cordova-ios 5.0.0 中,仍然需要一个插件才能使用它。 6.0.0 版本应该有。
现在有可用的 Ionic Capacitor,它是从一开始就使用 WKWebView
构建的 Apache Cordova 替代品。它有自己的一组插件,但它也与大多数 Cordova 插件兼容。 https://capacitor.ionicframework.com/
旧编辑:2018 年 8 月
Apple 已在 iOS 12 中弃用 UIWebView
,并可能会在 iOS 13 中将其删除。
Apache Cordova has announced它将在下一个主要版本 (5.x.x) 中将 cordova-plugin-wkwebview-engine
集成到 cordova-ios
中,但是 UIWebView
将仍然有效并且是默认的。此外,您将能够在运行时在它们之间切换以轻松测试您的应用程序。在未来的版本中,它将删除整个 UIWebView
代码,而 WKWebView
将是唯一的选择。
但是cordova-plugin-wkwebview-engine
还有很多问题。我仍然建议使用 cordova-plugin-ionic-webview因为使用 GCDWebServer
解决了大部分 WKWebView
问题。
新编辑:2017 年 11 月
Ionic 团队推出了 new WKWebView plugin它不再是 Cordova 的一个分支,并在内部使用 GCDWebServer
并克服了大部分 Cordova 插件的已知问题。
新编辑:2016 年 8 月 24 日
更新只是为了添加 apache 的 WKWebView
插件的一个分支,该插件由 ionic 框架团队创建,为插件添加了一些增强功能。
https://github.com/driftyco/cordova-plugin-wkwebview-engine
增强功能可能很快就会出现在核心插件上,但您现在可以查看并测试 ionic fork。
新编辑:2015 年 12 月 9 日
cordova ios 4.0.0 has been released和 the version 1.0.0的 cordova-plugin-wkwebview-engine
尝试一下:
cordova create wkwvtest my.project.id wkwvtest
cd wkwvtest
cordova platform add ios@4
cordova plugin add cordova-plugin-wkwebview-engine
正如我已经说过的,cordova-plugin-wkwebview-engine 只支持 iOS 9,在 iOS 8 上它将使用 UIWebView 并且有一些 know issues
如果你也想支持 iOS 8,你可以使用 wkwebview-engine-localhost (实验性的)或 cordova-plugin-wkwebview来自 Telerik,它们都使用本地网络服务器
https://github.com/apache/cordova-plugins/tree/master/wkwebview-engine-localhost
旧消息:
您可以使用可用的 WKWebView 插件将 WKWebView 与 cordova 一起使用。
您提到的问题是 WKWebView 无法加载本地文件,因此插件使用本地 Web 服务器来解决该问题。
其中一些像来自 telerik 的这个 https://github.com/Telerik-Verified-Plugins/WKWebView (内置Web服务器)或cordova团队的官方https://github.com/apache/cordova-plugins/tree/master/wkwebview-engine-localhost (以网络服务器作为依赖插件)
由于你提到的bug在iOS 9上已经修复,目前的cordova插件(兼容iOS 8和iOS 9,使用web server)已经重命名为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 support
The cordova-plugin-wkwebview-engine plugin will be iOS 9 only and it will be a core plugin. The development of this updated plugin is still in progress. Apple has fixed the bug where we couldn’t load documents from file:// urls, and it is iOS 9 only. On non-iOS 9 devices, cordova-ios will fallback to using the UIWebView.
The old version of this plugin used a local webserver to load your main document. This older plugin can be used where you want to use WKWebView in both iOS 8 and iOS 9 deployments, but the plugin will remain as a cordova-labs experiment. This plugin has some re-factoring work to be done.
关于ios - Cordova iOS 9 上 WKWebView 的状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32405798/
我正在通读 Windows Phone 7.5 Unleashed,有很多代码看起来像这样(在页面的代码隐藏中): bool loaded; protected override void OnNav
在cgi服务器中,我这样返回 print ('Status: 201 Created') print ('Content-Type: text/html') print ('Location: htt
我正在查看 esh(easy shell)的实现,无法理解在这种情况下什么是 22 和 9 信号。理想情况下,有一个更具描述性的常量,但我找不到列表。 最佳答案 信号列表及其编号(包括您看到的这两个)
我的Oozie Hive Action 永远处于运行模式。 oozie.log文件中没有显示错误。
我正在编写一个使用 RFCOMM 通过蓝牙连接到设备的 Android 应用程序。我使用 BluetoothChat 示例作为建立连接的基础,大部分时间一切正常。 但是,有时由于出现套接字已打开的消息
我有一个云调度程序作业,它应该每小时访问我的 API 以更新一些价格。这些作业大约需要 80 秒才能运行。 这是它的作用: POST https://www.example.com/api/jobs/
我正在 Tomcat 上访问一个简单的 JSP 页面: 但是当我使用 curl 测试此页面时,我得到了 200 响应代码而不是预期的 202: $ curl -i "http://localhos
有时 JAR-RS 客户端会发送错误的语法请求正文。服务器应响应 HTTP status 400 (Bad Request) , 但它以 HTTP status 500 (Internal Serve
我正在尝试通过 response.send() 发送一个整数,但我不断收到此错误 express deprecated res.send(status): Use res.sendStatus(sta
我已经用 Excel 和 Java 做过很多次了……这次我需要用 Stata 来做,因为保存变量更方便'labels .如何将 dataset_1 重组为下面的 dataset_2? 我需要转换以下
我正在创建一个应用程序,其中的对象具有状态查找功能。为了提供一些上下文,让我们使用以下示例。 帮助台应用程序,其中创建作业并通过以下工作流程移动: 新 - 工作已创建但未分配 进行中 - 分配给工作人
我想在 Keras 中运行 LSTM 并获得输出和状态。在 TF 中有这样的事情 with tf.variable_scope("RNN"): for time_step in range
有谁知道 Scala-GWT 的当前状态 项目? 那里的主要作者 Grzegorz Kossakowski 似乎退出了这个项目,在 Spring 中从事 scalac 的工作。 但是,在 interv
我正在尝试编写一个 super 简单的 applescript 来启动 OneDrive App , 或确保打开,当机器的电源设置为插入时,将退出,或确保关闭,当电源设置为电池时。 我无法找到如何访问
目前我正在做这样的事情 link.on('click', function () { if (link.attr('href') !== $route.current.originalPath
是否可以仅通过查看用户代理来检测浏览器上是否启用/禁用 Javascript。 如果是,我应该寻找什么。如果否,检测用户浏览器是否启用/禁用 JavaScript 的最佳方法是什么 最佳答案 不,没有
Spring 和 OSGi 目前的开发状况如何? 最近好像有点安静了。 文档的最新版本 ( http://docs.spring.io/osgi/ ) 来自 2009 年。 我看到一些声明 Sprin
我正在从主函数为此类创建一个线程,但即使使用 Thread.currentThread().interrupt() 中断它,输出仍然包含“Still Here”行。 public class Writ
为了满足并发要求,我想知道如何在 Godog 中的多个步骤之间传递参数或状态。 func FeatureContext(s *godog.Suite) { // This step is ca
我有一个UIButton子类,它不使用UIImage背景,仅使用背景色。我注意到的一件事是,当您设置按钮的背景图像时,有一个默认的突出显示状态,当按下按钮时,该按钮会稍微变暗。 这是我当前的代码。
我是一名优秀的程序员,十分优秀!