【问题标题】:Android - Image Loading from WebPage in WebViewAndroid - 在 WebView 中从网页加载图像
【发布时间】:2014-03-18 17:34:46
【问题描述】:

我正在尝试使用 WebView.loadUrl(String url) 将 wiki 网页加载到本机 Android WebView 中。它可以工作并显示除图像之外的所有 Web 内容。但是,我还没有找到原因。有谁知道为什么图像资源不会自动加载?是否有我需要覆盖的方法或需要设置的参数?我在文档中找不到任何内容 - 看起来默认设置应该允许自动加载图像。任何信息,将不胜感激。谢谢!

mWebView = (WebView)findViewById(R.id.webView);
setWebViewClient(mWebView);
setWebSettings(mWebView);
mWebView.loadUrl("http://my_wiki_url_goes_here/");

private void setWebViewClient(WebView mWebView) {
    WebViewClient client = new WikiWebViewClient();
    mWebView.setWebViewClient(client);
}

private void setWebSettings(WebView mWebView) {
    WebSettings settings = mWebView.getSettings();
    settings.setJavaScriptEnabled(true);
}

public class WikiWebViewClient extends WebViewClient {

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        return false;   
    }

}

打印url onLoadResource(),我看到图片url一般以“data:image/png;base64”开头。我不认为这应该有所作为 - 它可以在网络浏览器中使用。

【问题讨论】:

  • 所有图片都没有加载吗?也许这个链接可以帮助你:stackoverflow.com/questions/13487734/…
  • 谢谢,我确实看到了这个链接,但我无法访问要调整大小的图像(我严格在前端工作)。除了图像大小还有其他可能性吗?谢谢!
  • 你用的是哪个安卓版本?也许没有加载缓存的图像?网址如何,如果它不是机密的:)
  • 4.1.2 - 看起来我只需要启用 DOM 存储

标签: android image android-webview


【解决方案1】:

嗯,看起来只是启用 DOM 存储就可以了。

settings.setDomStorageEnabled(true);

如果我没有收到更好的解释或解决方案,我会在能够接受的时候接受这个答案

【讨论】:

  • Jo,看起来它默认是禁用的,可能是出于安全原因。此设置允许您存储数据并重复使用它。所以图像没有加载,因为它不允许将它们存储在您的设备上。非常有趣:)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-07-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多