我的一位客户反馈我,通过我的应用程序下载的文件不会放在Downloads文件夹中。而不是下载目录,它们被收集在另一个类似于我的应用程序包名称的自定义目录中,例如' v2MyApp'我在java代码中从未提及过。我正在使用setDestinationInExternalFilesDir(f1,Environment.DIRECTORY_DOWNLOADS,fileName);
并尝试使用Environment.DIRECTORY_DOWNLOADS强制将我的文件保存在Downloads目录中,但为什么会发生这种情况。我不知道。任何建议都会很棒。或者任何保存它们的解决方案都可以确保"下载" 。目录
日Thnx。
BTW问题仅在此客户端上发生,没有模拟器或任何其他设备制作它。
下载流程:
if (isOnline()) {
WebView wv = (WebView) findViewById(R.id.some_vw);
wv.loadUrl("some.url/");
wv.setDownloadListener(new DownloadListener() {
@Override
public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) {
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setDestinationInExternalFilesDir(Activity.this, Environment.DIRECTORY_DOWNLOADS,fileName);
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(request);
}
});}
答案 0 :(得分:0)
看起来您打算使用setDestinationInExternalPublicDir
将下载文件的本地目标设置为公共外部存储目录中的路径(由
getExternalStoragePublicDirectory(String)
返回)。
而不是setDestinationInExternalFilesDir
将下载文件的本地目标设置为应用程序外部文件目录中的路径(由
getExternalFilesDir(String)
返回)。