Вы можете использовать эти код только для музыкальных плееров, которые используют по умолчанию Android хранения информации. Но у Google Play Music есть своя база данных. Вот почему вам нужны разные имена uri и столбцов.
Чтобы получить список плейлистов Я использую следующий код:
Uri playlistsUri = Uri.parse("content://com.google.android.music.MusicContent/playlists");
Cursor playlists = context.getContentResolver().query(playlistsUri, new String[]{"_id", "playlist_name"}, null, null, null);
Тогда вы можете получить песню идентификатор, который имеет отношение к песне ид в Android по умолчанию хранения средств массовой информации. После этого вы можете напрямую воспроизводить песни или получать информацию о песнях, чтобы что-либо сделать с ней.
Uri songsUri = Uri.parse("content://com.google.android.music.MusicContent/playlists/" + playlistId + "/members");
context.getContentResolver().query(songsUri, new String[]{"SourceId", "hasLocal"}, null, null, null);
Чтобы получить песню детали из хранилища по умолчанию медиа на Android, вы должны использовать что-то вроде этого:
Cursor songDetailsCursor = context.getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
new String[]{MediaStore.Audio.Media.DATA},
MediaStore.Audio.Media._ID + " = " + songId,
null, null);
Первый запрос возвращает только одну запись. т. е. последний созданный плейлист. –