在开发音乐播放器时除了网络音乐我们很多时候需要读取本地的音频文件,并且把歌曲的名字、歌手、时间等内容显示出来,但是本地储存的格式是不规范的,所以我们在把音频文件从本地获取出来之后还需要进行格式的转换
效果图:
步骤一:创建一个歌曲类,定义变量,这些变量用来储存需要获取的内容
package com.contentprovide.liuliu.get_demo2;
/**
* Created by liuliu on 2018/1/14.
*/
public class Song {
public String song;//歌曲名
public String singer;//歌手
public long size;//歌曲所占空间大小
public int duration;//歌曲时间长度
public String path;//歌曲地址
}
步骤二:定义一个工具类,在这个类中获取音频文件,并且对歌曲名、歌手和时间等进行格式规范
package com.contentprovide.liuliu.get_demo2;
import android.content.Context;
import android.database.Cursor;
import android.provider.MediaStore;
import java.util.ArrayList;
import java.util.List;
/**
* Created by liuliu on 2018/1/14.
*/
//工具类
public class Utils {
//定义一个集合,存放从本地读取到的内容
public static List<Song> list;
public static Song song;
public static List<Song> getmusic(Context context) {
list = new ArrayList<>();
Cursor cursor = context.getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI
, null, null, null, MediaStore.Audio.AudioColumns.IS_MUSIC);
if (cursor != null) {
while (cursor.moveToNext()) {
song = new Song();
song.song