jjzjj

java - stringByEvaluatingJavascriptFromString(iOS 方法,Android 等效方法是什么?)

coder 2023-06-15 原文

在 iOS 应用中,我使用了

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

获取正在显示在 webView 上的图像的 src 目录。我想为 Android 做同样的事情。我有哪些选择?

基本上,目的是捕获路径,以便我可以通过电子邮件发送相同的图片...

即。

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

这样,当用户单击链接或将其发布到 facebook 等时,将加载相同的图像。

最佳答案

是的,我非常想念 Android 中的这个方法 ;)

要执行 JavaScript 并获得响应,您可以执行以下操作:

  1. 在您的代码中定义 JavaScript 回调接口(interface):

    class MyJavaScriptInterface {
        @JavascriptInterface
        public void someCallback(String jsResult) {
             // your code...
        }
    }
    
  2. 将此回调附加到您的 WebView

    MyJavaScriptInterface javaInterface = new MyJavaScriptInterface();
    yourWebView.addJavascriptInterface(javaInterface, "HTMLOUT");
    
  3. 运行 JavaScript 从脚本调用 window.HTMLOUT.someCallback:

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

希望这会有所帮助!

关于java - stringByEvaluatingJavascriptFromString(iOS 方法,Android 等效方法是什么?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10304680/

有关java - stringByEvaluatingJavascriptFromString(iOS 方法,Android 等效方法是什么?)的更多相关文章

随机推荐