简单的音乐播放器,因为之前在上课的时候做了一半回去用自己电脑做,Android的版本不一样导致了音乐播放不出来,花了一下午时间调试,今天拿出来复习了一遍。分享一些心得
音乐播放器主要通过service后台服务和线程实现的。
服务是一个后台运行的组件,执行长时间运行且不需要用户交互的任务。即使应用被销毁也依然可以工作。
音乐播放器主要实现是由starservice实现的,首先先设置界面布局,打造一个音乐播放界面。
三个按钮主要作用:播放:点击后播放音乐,暂停:点击后音乐暂停,进度条不变,停止:点击后音乐停止,进度条归零。
接下来到Java界面,编写代码,我的MainActivity.java主要调用函数过程如下,我将按以下顺序逐步写实验过程。
绑定控件及设置音乐存放的路径,
然后创建一个service类,命名为MusicService.java。并且在Manifest里进行注册。
然后通过Binder来建立MainActivity.java与MusicService.java的通信。
在MainActivity.java里通过如下代码,使得activity启动时便通过bindService,从而与MusicService绑定。bindService成功后回调onServiceConnected函数,通过IBinder 获取Service对象。
既然已经activity已经绑定service,那么我们可以将媒体文件放在service里,然后通过binder来保持通信。
之后设置相关按钮事件
最后,在模拟机的“设置”中–>“应用权限” 打开音乐播放的权限,我之前授权之后也不能播放,之后我先查找了一下代码是否有误,后面发现是因为模拟机太低级了,我下载是4.0的,换了一个之后就可以播放了。