基于存储卡音乐播放器V0.3
- 功能:列表显示存储卡指定目录里全部音乐,显示播放进度与音乐时长
在基于存储卡音乐播放器V0.2基础上,增加功能:
-添加一个音乐播放列表(显示歌名)
– 单击某一首音乐就立刻播放,播放进度清零,显示当前音乐的播放时长。
添加一个【上一首】与【下一首】按钮
– 当前音乐为第一首时,单击【上一首】按钮,切换到最后一首音乐。
– 当前音乐为最后一首时,单击【下一首】按钮,切换到第一首音乐。
– 当某一首音乐播放完毕后,会自动切换到下一首音乐播放。
涉及知识点
- 标签(TextView)
- 按钮(Button)
- 媒体播放器(MediaPlayer)
- 进度条(ProgressBar)
- 线程(Thread)
- 消息处理器(Handler)
- 列表视图(ListView)
增加功能实现:
一、添加一个【上一首】与【下一首】按钮
1.将图片素材拷贝到drawable目录与mipmap目录
2.添加按钮背景图片选择器
(1)播放按钮背景图片选择器 - play_button_selector.xml
(2)暂停按钮背景图片选择器 - pause_button_selector.xml
(3)上一首按钮背景图片选择器 - previous_button_selector.xml
(4)下一首按钮背景图片选择器 - next_button_selector.xml
3.切换功能实现
(1)上一首音乐方法 - nextMusic()
(2)下一首音乐方法 - previousMusic()
(3)绑定上一首按钮单击事件处理方法
(4)绑定下一首按钮单击事件处理方法
4.授权访问外置存储卡、获取音乐列表
创建获取音乐列表的方法 - getMusicList()
实现基于存储卡音乐播放器V0.3所遇问题的解决:
- app图标无法显示
我的解决方法是导入icon图标到mipmap资源文件时将起导入成后缀有xxxhdpi的格式,这样手机端页面就有显示了
- API问题
每个存储卡版本一开始运行都要报错,我的电脑需要找到build.gradle(Moudle app) 里的defaultConfig代码块 ,将minSdkVersion 的版本数调低一些,比如23左右,我的默认值是30,所以导致app运行不了。