iOS上的cordova-plugin-crosswalk-webview

jed*_*edi 7 webview ios cordova crosswalk-runtime

我创建了一个cordova项目,添加了2个平台(android,ios)和一些插件.其中一个是最后一个cordova-plugin-crosswalk-webview(1.3.1).我选择iOS8和android 4.0就像目标android一样.一切运作良好,我也可以构建Android平台和iOS.

在我的config.xml文件中,这一行是自动添加的:

...
<preference name="xwalkVersion" value="14+" />
<preference name="xwalkCommandLine" value="--disable-pull-to-refresh-effect" />
<preference name="xwalkMode" value="embedded" />
...
Run Code Online (Sandbox Code Playgroud)

对于Android我肯定会使用crosswalk插件.使用Chrome检查器,我可以看到navigator.userAgent设置为Crosswalk,与此图像类似

我的软件包android-debug.apk现在分为android-debug-armv7.apk和android-debug-x86.apk,apk大小接近25Mb.

但对于iOS,如果人行横道工作与否,我无法理解.在我的iOS虚拟机的safari检查器上,navigator.userAgent变量是:

"Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X)  AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12H141 (140222960683616)"
Run Code Online (Sandbox Code Playgroud)

我如何确定我在iOS上运行的浏览器?并且,如果没有使用config.xml配置,我如何设置crosswalk-webview fos iOS?

我已经阅读了适用于iOS的人行横道快速入门指南,但我认为对于谁正常使用cordova CLI并不是那么容易理解.在cordova-plugin-crosswalk-webview npm包的文档中没有任何内容.

更新:

关注cordova输出:

$ cordova plugin list
cordova-plugin-crosswalk-webview 1.3.1 "Crosswalk WebView Engine"


$ cordova platforms add ios

Adding ios project...
iOS project created with cordova-ios@3.9.2
Running command: /Users/jedi/prj/appMobile/hooks/after_prepare/010_add_platform_class.js /Users/jedi/prj/appMobile
add to body class: platform-ios
Running command: /Users/jedi/prj/appMobile/hooks/after_prepare/030_resource_files.js /Users/jedi/prj/appMobile 
...
Installing "cordova-plugin-console" for ios
Installing "cordova-plugin-crosswalk-webview" for ios
Installing "cordova-plugin-device" for ios
..
Run Code Online (Sandbox Code Playgroud)

jce*_*ile 3

iOS 上的 crosswalk 使用原生WKWebView,具有 indexedDB 支持,您可以运行此 javascript 代码来检查它是否是WKWebView

if (window.indexedDB) {
    alert('WKWebView');
} else {
   alert('UIWebView');
}
Run Code Online (Sandbox Code Playgroud)