java - 某些网站图像未显示在 android 的 webview 中
问题描述
我正在尝试通过 Android 的 webview加载网站( http://www.mdzaika.com/ )。但是有些图像没有显示在 webview 中。
这个问题我在某个特定网站上看到过,我试过不同的网站,没有看到这个问题。
MainActivity.java
public class MainActivity extends AppCompatActivity {
...
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mdzaika_layout);
browser = findViewById(R.id.webview);
splashImage = findViewById(R.id.splashScreen);
progressBar = findViewById(R.id.progressBar);
browser.setWebViewClient(new MDZaikaBrowser());
WebSettings webSettings=browser.getSettings();
webSettings.setJavaScriptEnabled(true);
browser.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
webSettings.setDomStorageEnabled(true);
webSettings.setAppCacheEnabled(true);
webSettings.setLoadsImagesAutomatically(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
webSettings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
browser.loadUrl("http://www.mdzaika.com/");
}
MDZaikaBrowser.java
private class MDZaikaBrowser extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
Log.d(TAG, "progress bar Visible. Url = " + url);
progressBar.setVisibility(View.VISIBLE);
return true;
}
@TargetApi(Build.VERSION_CODES.N)
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
view.loadUrl(request.getUrl().toString());
return true;
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
splashImage.setVisibility(View.GONE);
browser.setVisibility(View.VISIBLE);
progressBar.setVisibility(View.GONE);
}
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
super.onReceivedError(view, request, error);
Toast.makeText(getApplicationContext(), R.string.no_internet_error_msg, Toast.LENGTH_SHORT).show();
if (splashImage.getVisibility() == View.VISIBLE)
finish();
else
view.loadUrl("about:blank");
}
}
}
我期望显示移动浏览器中显示的所有图像。但有些图像显示不正确。
解决方案
i don't know what is the problem , but i'm sure it's not coming from you , i tested the website on my chrome in laptop and pressed F12 button, and open device toolbar , the website is shown as the picture you mentioned in all devices , try it yourself !
so i i'm pretty sure the problem is coming from the website !
推荐阅读
- c++ - 在 C++ 中实现回调
- sql - 将 SQL Server 外部应用查询迁移到雪花查询
- amazon-web-services - 在哪里可以查看 AWS 资源之间的映射?
- node.js - 使用 gitlab-runner 和 docker 部署
- python - 从python中的describe()中提取值
- javascript - 如何将两个对象数组与javascript中的键/值对合并为一个数组
- r - 在训练和测试数据集中保持组之间的相同比率
- html - CSS 网格大小不相等
- reactjs - useState Hook 的 set 方法不会重新渲染使用过的 Hook
- django - 多个 django 视图之间的 fakeredis