Android在WebView中调用JavaScript函数
我想打电话给一些javascript坐在一个html中运行的页。android webview..下面代码试图做的非常简单-从Android应用程序中,调用javascript函数具有一个测试消息,该函数反过来在Android应用程序中调用一个java函数,该应用程序通过TOS显示测试消息。
这个javascript函数看起来如下:function testEcho(message){
window.JSInterface.doEchoTest(message);}
在WebView中,我尝试调用javascript没有运气的方式有以下几种:myWebView.loadUrl("javascript:testEcho(Hello World!)");mWebView.loadUrl("javascript:(function () { " + "testEcho(Hello World!);" + "})()");
我确实让javascript在WebViewmyWebView.getSettings().setJavaScriptEnabled(true);// register class containing methods to be exposed to JavaScriptmyWebView.
addJavascriptInterface(myJSInterface, "JSInterface");
这里是Java班级,等级public class JSInterface{private WebView mAppView;public JSInterface (WebView appView) {
this.mAppView = appView;
}
public void doEchoTest(String echo){
Toast toast = Toast.makeText(mAppView.getContext(), echo, Toast.LENGTH_SHORT);
toast.show();
}}
我花了很多时间搜索,看看我可能做错了什么。我发现的所有例子都使用这种方法。有人看到这里有什么不对劲吗?
编辑:还有其他几个外部的javascript中引用和使用的文件。html会不会是问题所在?