从Android的最新Cordova版本(5.0.0)访问appView
时,我确实遇到了麻烦。
例如,说我想向我的应用添加Javascript接口。在此版本之前,我曾经编写以下代码行:
super.appView.addJavascriptInterface(new WebAppInterface(this), "jsInterface");
然后
WebAppInterface
:public class WebAppInterface { ... }
现在,它根本不起作用。科尔多瓦最近有改变吗?我真的不知道该怎么办。
在这两种情况下(先前版本和新版本),我的主要活动都具有以下结构:
public class CordovaApp extends CordovaActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.init();
loadUrl(Config.getStartUrl());
...
}
最佳答案
经过几天的寻找解决方案,我终于使该应用程序开始工作。
Cordova更改了访问Android webView
的方式。使用Cordova 5.0.0和更高版本的开发人员需要将此行添加到他们的主要活动中:
WebView wV = (WebView)appView.getEngine().getView();
然后,只需照常调用wV。例如,要添加一个Javascript接口:
wV.addJavascriptInterface(new WebAppInterface(this), "jsInterface");
我希望这个答案能帮助对这个新更新感到困惑的其他人。