stringByEvaluatingJavascriptFromString (método iOS, ¿qué es Android equivalente?)

En una aplicación de iOS, utilicé

stringFromJavaScript = [webView stringByEvaluatingJavascriptFromString:@"document.getElementById(\"image\").getAttribute(\"src")"]; 

Para obtener el directorio src de la imagen que se muestra en la vista web. Quiero hacer lo mismo para Android. ¿Cuáles son mis opciones?

Básicamente, la intención es capturar el camino para poder enviar esta misma imagen por correo electrónico …

es decir.

 "picture.php?image=%@",stringFromJavascript 

De esta manera, esa misma imagen se cargará cuando el usuario haga clic en el enlace, o lo publique en Facebook, etc.

Sí, echo de menos este método en gran medida en Android;)

Para ejecutar JavaScript y obtener una respuesta, puede hacer lo siguiente:

  1. Defina la interfaz de callback de JavaScript en su código:

     class MyJavaScriptInterface { @JavascriptInterface public void someCallback(String jsResult) { // your code... } } 
  2. Adjunte esta callback a su WebView

     MyJavaScriptInterface javaInterface = new MyJavaScriptInterface(); yourWebView.addJavascriptInterface(javaInterface, "HTMLOUT"); 
  3. Ejecute su window.HTMLOUT.someCallback llamada de JavaScript. window.HTMLOUT.someCallback desde el script:

     yourWebView.loadUrl("javascript:( function () { var resultSrc = document.getElementById(\"image\").getAttribute(\"src\"); window.HTMLOUT.someCallback(resultSrc); } ) ()"); 

¡Espero que esto ayude!