Meine Anwendung lädt JPGs von einer Website mit dem DownloadManager herunter und speichert sie im Verzeichnis /sdcard/Android/name.app/, um in mehreren Fragmenten in der Anwendung verwendet zu werden. Der Download funktioniert großartig, aber die JPGs sind in der Gallery-Anwendung sichtbar, was ich nicht möchte, da sie nur Assets für meine Anwendung sind. Ich kann nicht herausfinden, wie sie nicht in der Gallery-Anwendung angezeigt werden. Ich habe sogar versucht, Nomedia-Dateien zu den Verzeichnissen hinzuzufügen, wenn sie erstellt werden. Jede Hilfe wäre willkommen!Verhindern, dass der Medienscanner JPGs scannt, die mit dem DownloadManager auf Android heruntergeladen wurden? (Entwickler)
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);
Die Probleme scheinen verursacht werden, weil MediaScanner die Bilder auf die Systemdatenbank erweitert, obwohl ich es nicht gebeten haben.
Ich habe eine Test-App erstellt, die das Problem demonstriert. Wenn Sie auf die Schaltfläche Download klicken, wird das Google-Logo in der App angezeigt. Wenn Sie in die Galerie-App gehen, sollten Sie auch das Google-Logo in einer Galerie namens Download sehen. Wenn Sie auf Einstellungen -> Apps gehen und die Daten für Galerie und Medienspeicher löschen, ist das Google Logo verschwunden und wird nicht mehr in der Galerie angezeigt, da sich die Datei unter/sdcard/Android/data/befindet .nomedia-Datei. Sie können unter /sdcard/Android/data/com.example.downloadmanagertest/files/Download/ nachsehen, ob die Bilder noch auf dem Telefon sind. Auch nach einem Neustart werden die Bilder nicht in der Galerie angezeigt, wenn Sie die Daten für Galerie und Medienspeicher löschen. Ich habe dies sowohl auf einem Nexus 4 als auch auf einem Nexus 7 mit 4.2.2 getestet.
Quelle: https://dl.dropboxusercontent.com/u/114414/DownloadManagerTest.zip
Ich denke, dass diese Frage mehr "generisch" sein sollte. Ich hatte ein ähnliches Problem, als ich TomTom installierte: Tausende von Icons erschienen in meiner Galerie! Gibt es eine Möglichkeit, einen Ordner aus der Galerie "auszublenden"? – AndreaCi
Dies ist nicht für eine Anwendung, die ich heruntergeladen habe, ist es für eine Anwendung, die ich entwickle. Ich möchte nicht, dass jeder, der die Anwendung heruntergeladen hat, selbstständig arbeiten muss. – notkevin
Haben Sie versucht, Bilder in einen Ordner herunterzuladen, der keine Mediendatei enthält (Datei mit dem Namen .nomedia)? Diese Datei muss das Durchsuchen von Dateien im Ordner verhindern. –