最近想做一个音乐播放器。不知道从何下手。第一个问题就是怎么搜索手机里面所有音乐文件。然后加载什么求大神。
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(); }
还需要添加 权限
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?
- ¥15 c++头文件不能识别CDialog
- ¥15 Excel发现不可读取的内容