Llame a la función Java desde JavaScript a través de Android WebView
Quiero hacer una llamada sincrónica a algún código Java en mi aplicación de Android.
Estoy usando esta solución:https://stackoverflow.com/a/3338656
Mi código de Java:
final class MyWebChromeClient extends WebChromeClient {
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
Log.d("LogTag", message);
result.confirm();
return true;
}
}
Mi código JavaScript:
<html>
<script>
function java_request(){
alert('test');
}
</script>
<body>
<h2>Welcome</h2>
<div id="area"></div>
<form>
<input type="button" value="java_call" onclick="java_request()">
</form>
</body>
</html>
Cuando toco en eljava_call
Botón, el botón pasa al estado presionado. puedo ver'test'
en el log de la consola. Todo es normal hasta aquí.
El problema es que el botón nunca vuelve a su estado normal. Se mantiene en estado presionado. Tal vez la ejecución de JavaScript está rota o algo así?
¿Por qué el botón nunca vuelve a su estado normal?