Skip to content

Commit

Permalink
Fix getAlbums() on Android Q
Browse files Browse the repository at this point in the history
  • Loading branch information
dragermrb committed Sep 14, 2021
1 parent b9ee3aa commit 4502794
Showing 1 changed file with 16 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@
import java.nio.channels.FileChannel;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;

@CapacitorPlugin(
name = "Media",
Expand Down Expand Up @@ -151,19 +153,26 @@ private void _getAlbums(PluginCall call) {

JSObject response = new JSObject();
JSArray albums = new JSArray();
StringBuffer list = new StringBuffer();
Set<String> bucketIds = new HashSet<String>();

String[] projection = new String[] { "DISTINCT " + MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME };
String[] projection = new String[] {
MediaStore.MediaColumns.BUCKET_DISPLAY_NAME,
MediaStore.MediaColumns.BUCKET_ID
};
Cursor cur = getActivity().getContentResolver().query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null, null, null);

while (cur.moveToNext()) {
String albumName = cur.getString((cur.getColumnIndex(MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME)));
JSObject album = new JSObject();
String albumName = cur.getString((cur.getColumnIndex(MediaStore.MediaColumns.BUCKET_DISPLAY_NAME)));
String bucketId = cur.getString((cur.getColumnIndex(MediaStore.MediaColumns.BUCKET_ID)));

list.append(albumName + "\n");
if (!bucketIds.contains(bucketId)){
JSObject album = new JSObject();

album.put("name", albumName);
albums.put(album);
album.put("name", albumName);
albums.put(album);

bucketIds.add(bucketId);
}
}

response.put("albums", albums);
Expand Down

0 comments on commit 4502794

Please sign in to comment.