在我的一个应用中,我正在获取HTML内容并添加Javascript图像并使用loadURL()加载内容。在单击图像时,调用注入的各个javascript函数。功能是“增加字体”,“减少字体”和& “共享”。
增加&使用Javascript函数减少字体大小 WebView.loadUrl(“javascript:getElementById('Title')... etc);
我最近将我的应用目标api更改为19(Android 4.4)。现在我注意到,无论何时调用字体大小的增加或减少,WebPage都变为空白。但分享继续正常运作。我在Android 4.4中添加了@JavaScriptInterface注释。
(当目标是16时,整个设置正在运行)。请告知是否有人遇到过这个问题。
答案 0 :(得分:4)
在Android 4.4及更高版本中,您无法再在loadUrl()WebView方法中加载javascript。现在有一个名为evaluateJavascript(...)
的新方法,其使用方法如下:
String javascript = "INSERT JAVASCRIPT";
ValueCallback<String> resultCallback;
// ...initialize resultCallback here
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
mWebView.evaluateJavascript(javascript, resultCallback);
} else {
mWebView.loadUrl(javascript);
}