能否强制cordova inAppBrowser使用Crosswalk webView?

3
在Crosswalk中,可以使用Cordova插件possible。而Cordova inAppBrowser似乎工作正常。但它仍然使用旧的Android浏览器,而不是Crosswalk Chromium(因此不支持所需的HTML5功能)。例如,可以通过检查用户代理来查看这一点:在应用程序内部{{block:1}}和在InAppBrowser内部{{block:2}}。
Mozilla/5.0 (Linux; U; Android 4.2.2; en-us; PHONENAME) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30。
2个回答

1
Cordova inAppBrowser插件是使用系统WebView组件实现的。在WebKit WebView和Crosswalk WebView的接口之间存在几个差异,因此cordova inAppBrowser不能简单地改为与Crosswalk webview完全兼容。
但是,如果您的要求很简单,例如只需使用inAppBrower显示一个html5页面,则可以通过对inAppBrowser插件进行几个更改来轻松显示Crosswalk webview。
您能否提供有关如何使用inAppBrowser插件的更多详细信息?

基本上,我需要打开某些网页(其中我无法控制它们的内容/标头等)。当页面被打开时,我需要注入自定义JavaScript代码以在打开页面的上下文中运行并从页面接收数据,然后关闭它。这可以在桌面上使用Chrome扩展轻松完成,但我需要在cordova应用程序内部实现此功能。因此,inAppBrowser的API及其executeScript足够了,问题在于它缺乏HTML5支持(例如blob构建)。 - slopen
1
@Gordon,如果你有的话,看到“inAppBrowser插件的几个更改”的代码会很棒。 - RYFN
一旦Crosswalk被集成,super.loadUrl(“file:///android_asset/www/index.html”)就可以起作用了吗?还是我们必须使用其他方法来使用Crosswalk的WebView? - Vishnudev K

0

你可能应该修复它;-) - Mathijs Segers
我无法使用executeScript运行它。 - Sergiy Ostrovsky

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接