在嵌入式WebView的Android Cordova项目中使用Crosswalk

时间:2015-09-21 12:58:48

标签: android cordova webview crosswalk-runtime crosswalk-project

我有一个使用嵌入式WebView的现有Android Cordova项目。这意味着Activity不会扩展CordovaActivity,而是嵌入SystemWebView并在onCreate中初始化。

以下是目前的工作方式:

在布局XML文件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

  .... other layout elements not related to Cordova....

    <org.apache.cordova.engine.SystemWebView
        android:id="@+id/cdvWebView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />
</RelativeLayout>

在活动的onCreate中:

SystemWebView systemWebView = (SystemWebView) findViewById(R.id.cdvWebView);
CordovaWebView cdvWebView = new CordovaWebViewImpl(new SystemWebViewEngine(systemWebView));

ConfigXmlParser parser = new ConfigXmlParser();
parser.parse(this);

cdvWebView.init(this, parser.getPluginEntries(), parser.getPreferences());

由于the bug in Lollipop versions 5.0.+ missing the "set" button,我想在项目中实现Crosswalk插件。

不幸的是,我发现的所有文档都假定正在使用典型的Cordova安装。我无法使XWalkWebView的嵌入和初始化正常工作,并且不断变为空白屏幕。

有没有人在类似情况下取得成功?

1 个答案:

答案 0 :(得分:0)

我不确定,但这可能会回答你的问题。它似乎表明在典型的cordova项目之外实现XWalkWebView:

https://github.com/kurli/crosswalk-website/wiki/How-to-use-Crosswalk-Embedded-API-on-Android