0
私は特定のアーティストから曲を手に入れようとしていますが、どうすればいいのですか?アーティストはユーザーの入力に応じて変更されるので、ハードコードするべきではありません。現在、デバイスからすべての曲をクエリするのにMediaStore
を使用していますが、選択したアーティストの曲のみを取得できるようにする方法はわかりません。特定のアーティストから曲を入手するには?
は、ここで私は以前にカーソルでの選択としてartistId
を渡すだけでなく、artistName
を渡してみました
public void displayArtistSongs(String artistName) {
//retrieve song info
ContentResolver musicResolver = getActivity().getContentResolver();
Uri musicUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
Cursor musicCursor = musicResolver.query(musicUri, null, artistName, null, null);
if(musicCursor!=null && musicCursor.moveToFirst()){
//get columns
int idColumn = musicCursor.getColumnIndex
(MediaStore.Audio.Media._ID);
int titleColumn = musicCursor.getColumnIndex
(MediaStore.Audio.Media.TITLE);
//add songs to list
do {
long thisId = musicCursor.getLong(idColumn);
String thisTitle = musicCursor.getString(titleColumn);
songList.add(new Song(thisId, thisTitle, null, null, null));
}
while (musicCursor.moveToNext());
}
musicCursor.close();
}
...コードだが、それはまだ動作しません。どんな解決策ですか?ありがとう。あなたはこのコードを使用することができます選択したアーティストからすべての曲を照会する