最近想做一个音乐播放器。不知道从何下手。第一个问题就是怎么搜索手机里面所有音乐文件。然后加载什么求大神。
3条回答
- 许菠萝 2017-06-09 16:35关注
获取本地音乐,MusicVo是我自己定义的音乐数据类
private void initData(){ // 实例化一个小机器人,用get方法 ContentResolver resolver = getContentResolver(); // 创建游标,锁定文件位置URI Cursor cursor = resolver.query( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null); // 将游标放在第一位 cursor.moveToFirst(); // 用for循环遍历游标所在的位置,将属性存储到List中,getCount 得到歌的数量 for (int i = 0; i < cursor.getCount(); i++) { // getColumnIndex 得到一个索引 ,再将索引转换成字符串 String name = cursor.getString(cursor .getColumnIndex(MediaStore.Audio.Media.TITLE)); String singer = cursor.getString(cursor .getColumnIndex(MediaStore.Audio.Media.ARTIST)); String path = cursor.getString(cursor .getColumnIndex(MediaStore.Audio.Media.DATA)); // 将那些属性在在对象之中 MusicVO music = new MusicVO(); music.setName(name); music.setPath(path); music.setSinger(singer); // 将对象放在List中 MainApplication.musicList.add(music); // 游标下移 cursor.moveToNext(); // 在后台打印输出歌名,调试BUG Log.d("TAG", name); } // 关闭游标,释放资源 cursor.close(); }
还需要添加 权限
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 keil的map文件中Image component sizes各项意思
- ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
- ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
- ¥15 划分vlan后,链路不通了?
- ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
- ¥15 Vue3 大型图片数据拖动排序
- ¥15 Centos / PETGEM
- ¥15 划分vlan后不通了
- ¥20 用雷电模拟器安装百达屋apk一直闪退
- ¥15 算能科技20240506咨询(拒绝大模型回答)