javascript - 在 Android Webview 中嵌入 Facebook 帖子

标签 javascript android facebook webview

我正在尝试将 Facebook 帖子嵌入到我的 Android 应用程序的 Webview 中。他们展示了如何在网站中包含 javascript ( https://developers.facebook.com/docs/plugins/embedded-posts )

我尝试将 html 代码加载到 webview 中,如下所示:

    String webcode = "<html>\n" +
            "   <body>\n" +
            "      <div class=\"fb-post\" \n" +
            "      data-href=\"https://www.facebook.com/20531316728/posts/10154009990506729/\"\n" +
            "      data-width=\"500\"></div>\n" +
            "      <!--        <div id=\"fb-root\"></div> -->\n" +
            "  </body>\n" +
            "<script>(function(d, s, id) {\n" +
            "  var js, fjs = d.getElementsByTagName(s)[0];\n" +
            "  if (d.getElementById(id)) return;\n" +
            "  js = d.createElement(s); js.id = id;\n" +
            "  js.src = \"https://connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.5\";\n" +
            "  fjs.parentNode.insertBefore(js, fjs);\n" +
            "}(document, 'script', 'facebook-jssdk'));</script>\n" +
            "</html>";
    web_view.getSettings().setJavaScriptEnabled(true);
    web_view.loadData(webcode, "text/html", null);

清晰格式的 Java 脚本代码:

<html>
   <body>
      <div class="fb-post" 
      data-href="https://www.facebook.com/20531316728/posts/10154009990506729/"
      data-width="500"></div>
      <!--        <div id="fb-root"></div> -->
  </body>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "https://connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.5";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>
</html>

但是,webview 显示了 2 行奇怪的字符。如果此代码在服务器上运行,则 Facebook 帖子将正确显示。为了让它在 Android 应用程序的 Web View 中工作,需要做什么?谢谢!

最佳答案

使用 web_view.loadDataWithBaseURL("http://some.url", webcode, "text/html", "utf-8", null); 而不是 web_view.loadData (webcode, "text/html", null);

关于javascript - 在 Android Webview 中嵌入 Facebook 帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36449114/

相关文章:

android - 命令“phonegap build android”失败

java - Gradle下载 "Connection reset"错误如何解决

javascript - jQuery - 带有字符串和 Conceal 字段正则表达式的 Facebook 样式标记。自动完成

java - Android 应用程序在多次回调后变得缓慢 - 这里出了什么问题?

javascript - 如何在功能测试 CI 环境中跨平台加载 Firefox 扩展?

java - 使用应用程序在 Safari 上获取 "Assertion failed: (anonymous function)"

javascript - JS Date 不是以前导 0 开头 - 可能重复的问题

javascript - 在 cakephp 中使用 javascript 数据

android - SherlockFragment中Activity代码的使用方法

ruby-on-rails - Ruby on Rails Youtube图像嵌入