Запрос MediaStore возвращает пустой курсор

Я пытаюсь запросить в MediaStore все списки воспроизведения на устройстве; однако используемый мной запрос возвращает пустой результат. Я просмотрел решения этой проблемы, но они упомянули только о монтируемом устройстве, и я перезапустил свое устройство, отключенное от сети, и проблема не была устранена. Любая помощь с моей проблемой будет принята с благодарностью.

private void getPlaylists(){
    Cursor cursor = null;

    String[] projection1 = {
           MediaStore.Audio.Playlists._ID,
           MediaStore.Audio.Playlists.NAME
        };

        cursor = getContentResolver().query(
           MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI,
           projection1,
           null,
           null,
           null);

        Toast.makeText(this, cursor.getCount() + "", Toast.LENGTH_LONG).show();
  }

Спасибо :)


person Evan Dastin-van Rijn    schedule 12.06.2015    source источник
comment
Попробуйте это: stackoverflow.com/questions/ 12008730/как создать плейлист/   -  person Theo    schedule 13.06.2015


Ответы (1)


Единственная разница между вашим кодом и моим заключается в использовании контекста.

 private final Uri uri = MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI;

public Cursor getandroidPlaylistcursor(Context context) {
    ContentResolver resolver = context.getContentResolver();
    final String id = MediaStore.Audio.Playlists._ID;
    final String name = MediaStore.Audio.Playlists.NAME;
    final String[] columns = { id, name };
    return  resolver.query(uri, columns, null, null,name + " ASC");
}
person Theo    schedule 13.06.2015