读取系统音乐

来源:互联网 发布:怎么样看淘宝店铺真假 编辑:程序博客网 时间:2024/09/21 06:35

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";@Overrideprotected 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;}

}

0 0
原创粉丝点击