您的位置:首页 > 其它

读取系统音乐

2016-05-28 10:14 246 查看
package com.example.readMusic;

public class MusicInfo {

private String title;

private String album;

private String artist;

private String url;

private int duration;

private long size;

public MusicInfo() {

super();

// TODO Auto-generated constructor stub

}

public String getTitle() {

return title;

}

public void setTitle(String title) {

this.title = title;

}

public String getAlbum() {

return album;

}

public void setAlbum(String album) {

this.album = album;

}

public String getArtist() {

return artist;

}

public void setArtist(String artist) {

this.artist = artist;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}

public int getDuration() {

return duration;

}

public void setDuration(int duration) {

this.duration = duration;

}

public long getSize() {

return size;

}

public void setSize(long size) {

this.size = size;

}

@Override

public String toString() {

return "MusicInfo [title=" + title + ", album=" + album + ", artist="

+ artist + ", url=" + url + ", duration=" + duration

+ ", size=" + size + "]";

}

public MusicInfo(String title, String album, String artist, String url,

int duration, long size) {

super();

this.title = title;

this.album = album;

this.artist = artist;

this.url = url;

this.duration = duration;

this.size = size;

}

}

=======================================================================

package com.example.readMusic;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Map.Entry;

import java.util.Set;

import android.app.Activity;

import android.database.Cursor;

import android.os.Bundle;

import android.provider.MediaStore;

import android.util.Log;

public class MainActivity extends Activity {

private static final String TAG = "MainActivity";

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

// ArrayList<HashMap<String,Object>> scanAllAudioFiles =

// scanAllAudioFiles();

// for (HashMap<String, Object> hashMap : scanAllAudioFiles) {

//

// }

ArrayList<MusicInfo> scanAllAudioFiles = scanAllAudioFiles();

for (MusicInfo musicInfo : scanAllAudioFiles) {

Log.i(TAG, musicInfo.toString());

}

}

public ArrayList<MusicInfo> scanAllAudioFiles() {

// 生成动态数组,并且转载数据

ArrayList<MusicInfo> mylist = new ArrayList<MusicInfo>();

// 查询媒体数据库

Cursor cursor = getContentResolver().query(

MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null,

MediaStore.Audio.Media.DEFAULT_SORT_ORDER);

// 遍历媒体数据库

while (cursor.moveToNext()) {

// 歌曲编号

int id = cursor.getInt(cursor

.getColumnIndex(MediaStore.Audio.Media._ID));

// 歌曲标题

String tilte = cursor.getString(cursor

.getColumnIndex(MediaStore.Audio.Media.TITLE));

// 歌曲的专辑名:MediaStore.Audio.Media.ALBUM

String album = cursor.getString(cursor

.getColumnIndex(MediaStore.Audio.Media.ALBUM));

// 歌曲的歌手名: MediaStore.Audio.Media.ARTIST

String artist = cursor.getString(cursor

.getColumnIndex(MediaStore.Audio.Media.ARTIST));

// 歌曲文件的路径 :MediaStore.Audio.Media.DATA

String url = cursor.getString(cursor

.getColumnIndex(MediaStore.Audio.Media.DATA));

// 歌曲的总播放时长 :MediaStore.Audio.Media.DURATION

int duration = cursor.getInt(cursor

.getColumnIndex(MediaStore.Audio.Media.DURATION));

// 歌曲文件的大小 :MediaStore.Audio.Media.SIZE

Long size = cursor.getLong(cursor

.getColumnIndex(MediaStore.Audio.Media.SIZE));

Log.i(TAG, new MusicInfo(tilte, album, artist, url, duration, size).toString());

mylist.add(new MusicInfo(tilte, album, artist, url, duration, size));

}

return mylist;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: