我正在使用 Webview 从 UIDAI 网站在我的应用程序中下载 .zip 文件。但是,当 DownloadListener 被调用时,它会返回正确的数据,但会在该 .zip 文件中下载该 HTML 网页,而不是下载实际文件。而当我尝试通过 chrome 下载相同的 zip 时。它正在下载正确的 zip 文件。请帮我解决这个问题。为什么在这个特定网站 ( https://resident.uidai.gov.in/offline-kyc) 的webview 中会发生这种情况,而使用相同的下载侦听器我可以在其他网站上下载文件?
我的代码:
public class wvDownloadFile extends AppCompatActivity {
private static final int MY_PERMISSION_REQUEST_CODE = 123;
String QT_TAG = "download test";
String fileName = "test";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView wv = findViewById(R.id.web_view);
checkPermission();
String url = "https://resident.uidai.gov.in/offline-kyc";
wv.loadUrl(url);
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setSupportMultipleWindows(true);
wv.getSettings().setAllowContentAccess(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
wv.getSettings().setAllowUniversalAccessFromFileURLs(true);
}
wv.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
wv.getSettings().setBuiltInZoomControls(false);
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
wv.getSettings().setAllowFileAccess(true); …Run Code Online (Sandbox Code Playgroud)