我正在写一个简单的应用程序来检测和打印用户在他们的设备上的所有歌曲。但是,该应用程序无法找到通过Google Play Store下载/购买的任何歌曲。如果我转到Play music应用程序,我可以看到音乐,但我的应用程序在打印歌曲列表时会忽略这些歌曲。我尝试了我能在这里找到的其他解决方案,但我不能让它们中的任何一个为我工作。
被注释掉的URI行使应用程序在打开时崩溃,如果我使用它,尽管这似乎是其他答案提出的。以下是代码的相关部分:
public void getSongList() {
ContentResolver musicResolver = getContentResolver();
Uri musicUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
//Uri musicUri = Uri.parse("content://com.google.android.music.MusicContent/audio");
Cursor musicCursor = musicResolver.query(musicUri, null, null, null, null);
if(musicCursor!=null && musicCursor.moveToFirst()){
//get columns
int titleColumn = musicCursor.getColumnIndex
(android.provider.MediaStore.Audio.Media.TITLE);
int idColumn = musicCursor.getColumnIndex
(android.provider.MediaStore.Audio.Media._ID);
int artistColumn = musicCursor.getColumnIndex
(android.provider.MediaStore.Audio.Media.ARTIST);
//add songs to list
do {
long thisId = musicCursor.getLong(idColumn);
String thisTitle = musicCursor.getString(titleColumn);
String thisArtist = musicCursor.getString(artistColumn);
songList.add(new Song(thisId, thisTitle, thisArtist));
}
while (musicCursor.moveToNext());
}
assert musicCursor != null;
musicCursor.close();
}谢谢,请记住,我对应用程序开发是相当陌生的。
发布于 2015-12-13 09:34:24
Google Play music不允许第三方应用程序通过任何API访问其音乐--您可以期望的唯一音乐是本地存储的音乐。
https://stackoverflow.com/questions/34246854
复制相似问题