Ich verwende folgenden Code, um eine Galerie in meiner App zu öffnen
%Vor%Ist es möglich, eine Liste von Bildern so zu beschränken, dass nur von der Kamera aufgenommene Bilder angezeigt werden? Wenn Sie Gallery auf meinem 2.1-System anzeigen, werden Bilder gruppiert, sodass ein Parameter definiert werden muss, der definiert, zu welchem Ordner er gehört.
Überprüfen der MediaStore.Images.ImageColumns Ich habe keine gefunden Spalte, die so etwas definieren würde.
Könnte ich falsch liegen? Denn wenn ich eine Abfrage erstellen könnte, um nach Ordner zu filtern und meine eigene Galerieansicht zu erstellen, wäre mein Problem gelöst.
Sie müssen nur MediaScannerConnectionClient in Ihrer Aktivität implementieren und danach müssen Sie den genauen Pfad einer der Dateien innerhalb des Ordnernamens als SCAN_PATH angeben und alle Dateien, die sich in diesem Ordner befinden, werden gescannt und im Build geöffnet in der Galerie. Geben Sie einfach den Namen Ihres Ordners ein und Sie erhalten alle darin enthaltenen Dateien einschließlich Video. Wenn Sie nur Bilder öffnen möchten, ändern Sie FILE_TYPE="image/*"
Keine der obigen Antworten ist richtig, einschließlich der als richtig markierten.
Hier ist die richtige Lösung:
Das Geheimnis besteht darin, den Bucket / das Album zu finden, in dem Ihr Ordner dargestellt wird. Buckets werden nach einem erfolgreichen MediaScan angezeigt, stellen Sie daher sicher, dass alle Bilder / Videos, die Sie anzeigen möchten, zuerst gescannt werden, wie oben mehrfach gezeigt.
Nehmen wir an, ich habe einen indizierten Ordner in / sdcard / myapp / myappsmediafolder :
%Vor%Jetzt da wir die bucketId für unser Album haben, können wir es mit einer einfachen Absicht öffnen.
Filtert Videodateien:
%Vor%Filtert Bilddateien:
%Vor%...
%Vor%Ich kann überprüfen, ob dies mit der integrierten Galerie-App funktioniert. Die Reichweite kann bei anderen Apps wie Google Fotos variieren.
Ich muss noch herausfinden, wie man Bilder / Videos nicht filtert, obwohl man in der Galerie ein bestimmtes Album ohne Filter auswählen kann.
Ich habe das herausgefunden, indem ich die AOSP-Quelle in der Galerie-App angeschaut habe.
Für diejenigen, die dies noch Aktivität geben nicht gefunden Ausnahme:
Sie müssen das Verzeichnis Ihres inneren Anwendungsordners angeben. Nicht Benutzer standardmäßig root wenn Bilder und alles.
%Vor%funktioniert ... aber kitkat zeigt nur ein Foto. Ich habe es geschafft, es für frühere Versionen mit zu beheben (Galerie aktualisieren, wenn Bild gespeichert wird):
%Vor%Ich habe nicht genug Reputation, um seine Antwort zu verbessern oder zu kommentieren, aber ShellDudes Antwort erlaubt es dir, einen Verzeichnis-URI in die Galerie-Absicht zu setzen. Wenn die Galerie-App geöffnet wird, werden also alle Bilder anstelle von 1 angezeigt.
Für mich hat das Scannen meiner Dateien wie die obigen Antworten nicht funktioniert. Das Abfragen des MediaStore.Images.Media.EXTERNAL_CONTENT_URI funktionierte nur nach dem Einfügen neuer Zeilen in die MediaStore.Images.Media.DATA-Tabelle mit dem ContentResolver:
%Vor%Tags und Links android android-gallery