В приложении iOS я использовал
stringFromJavaScript = [webView stringByEvaluatingJavascriptFromString:@"document.getElementById(\"image\").getAttribute(\"src")"];
Чтобы получить каталог src изображения, отображаемого в webView. Я хочу сделать то же самое для Android. Какие у меня варианты?
По сути, цель состоит в том, чтобы захватить путь, чтобы я мог отправить эту же картинку по электронной почте …
то есть.
"picture.php?image=%@",stringFromJavascript
Таким образом, это же изображение будет загружено, когда пользователь нажмет на ссылку или разместит ее в facebook и т. Д.
Да, я очень сильно скучаю по этому методу в Android;)
Чтобы выполнить JavaScript и получить ответ, вы можете сделать следующее:
Определите интерфейс обратного вызова JavaScript в вашем коде:
class MyJavaScriptInterface { @JavascriptInterface public void someCallback(String jsResult) { // your code... } }
Присоедините этот обратный вызов к WebView
MyJavaScriptInterface javaInterface = new MyJavaScriptInterface(); yourWebView.addJavascriptInterface(javaInterface, "HTMLOUT");
Запустите window.HTMLOUT.someCallback
вызова JavaScript.HTMLOUT.someCallback из сценария:
yourWebView.loadUrl("javascript:( function () { var resultSrc = document.getElementById(\"image\").getAttribute(\"src\"); window.HTMLOUT.someCallback(resultSrc); } ) ()");
Надеюсь это поможет!