4

我收到错误

异常 junit.framework.AssertionFailedError: 请让您的活动扩展 XWalkActivity 以用于共享模式

在 android 崩溃报告中。我无法在测试中遇到这种崩溃。我只在我的游戏中使用了 XWalkView 而不是 XWalkActivity。实现如下图所示。

XWalkView mXWalkView = new XWalkView(context);
MyJavaScriptInterface javaInterface = new MyJavaScriptInterface();
mXWalkView.addJavascriptInterface(javaInterface, "interOps");
mXWalkView.load("javascript:( function () { function createURL(event) { window.interOps.Callback(event.data); }window.addEventListener('message', createURL , false); } ) ()",null);
mXWalkView.load(URL, null);
mXWalkView.setResourceClient(new XWalkResourceClient(mXWalkView) {
                    @Override
                    public void onLoadFinished(XWalkView view, String url) 
                    {
                            super.onLoadFinished(view, url);
                    }
});

崩溃日志指向该行

XWalkView mXWalkView = new XWalkView(context);

而且我在嵌入式模式而不是共享模式下集成了人行横道;这就是为什么此崩溃日志令人困惑的原因。谁能帮我弄清楚为什么会抛出这个错误。

4

4 回答 4

0

我不知道这是否相关。我有同样的错误,我将支持的架构更改为 v7a,我的应用程序运行没有错误。

于 2019-12-24T13:27:56.020 回答
0

我认为错误来自加载javascript,我试图修改javascript abit:

function messageCallback() { window.addEventListener('message', function(event){window.interOps.Callback(event.data);} , false);}messageCallback();

不知道它有帮助,但尝试一下也无妨。

于 2017-03-10T07:21:47.330 回答
0

像这样试试;

mXwalkView = new XWalkView(this, null);

Crosswalk 运行时的构造函数。

公共构造函数

XWalkView(Context context, AttributeSet attrs)

通过 XML 进行膨胀的构造函数。

XWalkView(Context context, Activity activity)
于 2017-03-20T16:20:03.783 回答
0

It's possible that you're passing the wrong Context, if you're in the activity class try passing this otherwise try getBaseContext() or getApplicationContext() and see if you get the same error.

于 2017-03-20T16:11:32.343 回答