我已经在HTC和MI2以及一些三星设备上测试了我的应用程序,它运行良好。
然而,在索尼设备上,它根本不起作用。
Java代码:
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.addJavascriptInterface(new TestInterface(), "jsjava");
public class TestInterface {
@JavascriptInterface
public void login() {
Log.d("TEST", "js call java ok");
}
}
Html和js代码:
<script>
function login(response){
window.jsjava.login();
}
</script>
<div class="land"><a href="javascript:login();">Login</a></div>
日志消息&#34; js调用java ok&#34;没有出现在sony设备上,比如xperia。
我确保在设备上启用javascript支持,但它仍然无效。
请帮忙。
答案 0 :(得分:2)
解决!
添加
webView.setWebChromeClient(new WebChromeClient());
后
webView.getSettings().setJavaScriptEnabled(true);
将@JavascriptInterface添加到将从javascript调用的每个函数中。