//扫描本地音乐
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
{
new Thread()
{
@Override
public void run()
{
try
{
String[] ext = { ".mp3" };
File file = new File(Environment.getExternalStorageDirectory()+"/Android/data/com.tencent.qqmusic/files/qqmusic/song");//可以把"//////"这一串都去掉,扫面范围是整个SD卡,我嫌慢,而且扫出来很多...不是我想要的歌曲,最后还是直接写成QQ音乐的下载目录了,其实自己的APP支持下载的话,可以把歌曲下载的指定目录,然后扫描这个指定目录就行了~全局扫描的确不太合适,又不是杀毒..
localMusicList = Common.searchMp3Infos(file,ext);
hander.sendEmptyMessage(SEARCH_MUSIC_SUCCESS);
}catch (Exception e){}
}
}.start();
}
//扫描实现
static List<String> list = new ArrayList<>();
public static List<String> searchMp3Infos(File file, String[] ext) {
if (file != null) {
if (file.isDirectory()) {
File[] listFile = file.listFiles();
if (listFile != null) {
for (int i = 0; i < listFile.length; i++) {
searchMp3Infos(listFile[i], ext);
}
}
} else {
String filename = file.getAbsolutePath();
for (int i = 0; i < ext.length; i++) {
if (filename.endsWith(ext[i])) {
list.add(filename);
break;
}
}
}
}
return list;
}
public static List<HashMap<String, Object>> getMp3Infos(Context context)
{
Cursor cursor = context.getContentResolver().query(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null,
null, null, null);
ArrayList mp3Infos = new ArrayList();
for (int i = 0; i < cursor.getCount(); i++) {
cursor.moveToNext();
HashMap<String, Object> musicMap = new HashMap<>();
long id = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media._ID));//音乐id
String title = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.TITLE));//音乐标题
String artist = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ARTIST));//艺术家
String album = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM));//专辑
long albumid = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM_ID));//专辑id
long duration = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media.DURATION));//时长
long size = cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media.SIZE));//文件大小
String url = cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA));//文件路径
int isMusic = cursor.getInt(cursor.getColumnIndex(MediaStore.Audio.Media.IS_MUSIC));//是否为音乐
if (isMusic != 0) {
musicMap.put("id",id);
musicMap.put("title",title);
musicMap.put("artist",artist);
musicMap.put("album",album);
musicMap.put("albumid",albumid);
musicMap.put("duration",duration);
musicMap.put("size",size);
musicMap.put("url",url);
musicMap.put("isMusic",isMusic);
mp3Infos.add(musicMap);
}
}
cursor.close();
return mp3Infos;
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有