我的应用程序使用DownloadManager从网站下载jpgs,并将它们存储在/sdcard/Android/name.app/目录中,以便在应用程序中的多个片段中使用。然而,下载的效果很好,jpgs在Gallery应用程序中是可见的,我不想要,因为它们只是我的应用程序的资源。我无法弄清楚如何让它们不会出现在Gallery应用程序中。我甚至尝试添加.nomedia文件到它们被创建的目录。任何帮助,将不胜感激!防止媒体扫描器扫描JPG下载Android上的DownloadManager? (开发人员)
DownloadManager myDownloadManager = (DownloadManager) myActivity.getSystemService(Context.DOWNLOAD_SERVICE);
Request myRequest = new Request(Uri.parse(episodeArtLink));
myRequest.setNotificationVisibility(Request.VISIBILITY_HIDDEN);
myRequest.setVisibleInDownloadsUi(false);
myRequest.setDestinationInExternalFilesDir(myActivity, Environment.DIRECTORY_DOWNLOADS, myFilename);
myDownloadManager.enqueue(myRequest);
的问题,似乎因为MediaScanner被添加到图像,即使我没有要求它到系统数据库中造成的。
我已经创建了一个测试应用程序来演示这个问题。如果您点击下载按钮,Google徽标将显示在应用程序中。如果您进入Gallery应用,您还应该在名为“下载”的图库中看到Google徽标。如果您转到设置 - >应用并清除图库和媒体存储的数据,那么Google徽标将消失,并且不会再显示在图库中,因为该文件位于/ sdcard/Android/data /下,受到.nomedia文件。您可以前往/sdcard/Android/data/com.example.downloadmanagertest/files/Download/以确认图像仍在电话中。即使重新启动后,如果您清除“图库和媒体存储数据”,图像也不会显示在图库中。我已经在运行4.2.2的Nexus 4和Nexus 7上测试了这一点。
来源:以点(/sdcard/Android/name.app/.photos/)https://dl.dropboxusercontent.com/u/114414/DownloadManagerTest.zip
我认为这个问题应该更“通用”。当我安装TomTom时,我遇到了类似的问题:我的画廊中出现了数千个图标!有没有办法从画廊中完成“隐藏”文件夹? – AndreaCi 2013-05-06 08:06:54
这不是针对我下载的应用程序,而是针对我正在开发的应用程序。我不希望下载应用程序的所有人都必须自行寻找解决方法。 – notkevin 2013-05-06 14:47:07
您是否尝试将图像下载到不包含媒体文件的文件夹(名称为.nomedia的文件)?此文件必须阻止扫描文件夹中的文件。 – 2013-05-08 14:43:13