プレイリストから曲を取得してAndroidで再生しようとしています。
私が見つけることができるすべての答えは頼りにしています
MediaStore.MediaColumn.DATA
ファイルパスを見つけて、MediaPlayerにフィードします。
しかし、それを実行しようとすると、「invalid column _data」例外が発生し続けました。「AUDIO_ID」など、曲に関する他の情報を引き続き照会できます。だから私の質問は、「AUDIO_ID」だけがわかっている曲を再生することは可能ですか?どのように?それとも、他のすべての人がそれを使用できるので、私が「データ」に欠けているものがあります。
これは、プレイリストを取得するための私のコードです。
private Cursor getPlaylistCursor() {
String[] proj = { MediaStore.Audio.Playlists._ID,MediaStore.Audio.Playlists.NAME };
Uri playlistUri = Uri.parse("content://com.google.android.music.MusicConten/playlists");
Cursor playlistCursor = getContentResolver().query(playlistUri, proj,null, null, null);
playlistCursor.moveToFirst();
return playlistCursor;
}
これは私が曲を取得するために取り組んでいることです、私が言ったように、私は「データ」をクエリできません、「データ」引数がプロジェクションに追加された場合、私は例外を受け取ります。
private void getSongListCursor(Long playlistID) {
String[] proj2 = { MediaStore.Audio.Playlists.Members.TITLE,
MediaStore.Audio.Playlists.Members.AUDIO_ID };
String playListRef = "content://com.google.android.music.MusicContent/playlists/"
+ playlistID + "/members";
Uri songUri = Uri.parse(playListRef);
Cursor songCursor = getContentResolver().query(songUri, proj2, null,
null, null);
}
さて、曲のオーディオIDを持っていますが、どうすれば再生できますか?