我无法在WebView中打开mht文件。 在Chrome v76之前它工作正常,但是v77出现读取错误
如果 chrome 返回到 v76,则读取成功。 文件:///也不起作用。 使用 loadDataWithBaseURL 加载也不起作用
webview.loadUrl("file://{$context.cacheDir}/file.mht")
cid:帧 - "随机字符串" @ mhtml.blink 网 :: ERR_UNKNOWN_URL_SHCEME
很抱歉我的回答晚了,因为我遇到了同样的问题,我昨天正在寻找解决方案,今天我像下面这样解决它。
在你的Java类中,你必须给出下面的代码
webView.setWebViewClient(new WebViewClient() {
@Override
public void onLoadResource(WebView view, String url) {
super.onLoadResource(view, url);
if (one_time==1)//one_time is only a variable because i want
// to run view.loadUrl(url); only one time.
view.loadUrl(url);
one_time++;
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return true;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
@Override
public void onPageFinished(WebView view, final String url) {
}
});
我想你在给
view.loadUrl(url);
在下面的方法
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// view.loadUrl(url); like this
// you will need this when you will load the url but in case
//of mht page it will not work
return true;
}
如果您正在加载 MHT 页面,请不要这样做,因为
shouldOverrideUrlLoading(WebView view, String url){...}
加载 URL,它也会在您首次打开 Web 视图活动时运行。
所以
onLoadResource(WebView view, String url){...}
方法加载资源。