首页 理论教育 设计一个好用的音乐播放器的案例分析

设计一个好用的音乐播放器的案例分析

时间:2023-06-10 理论教育 版权反馈
【摘要】:下面通过一个“音乐播放器”的案例来演示如何使用服务来进行通信,具体步骤如下。图13-8音乐播放器界面布局文件activity_main.xml 代码如下:创建服务类MusicService创建一个服务类MusicService,用于完成音乐的播放、暂停、重播、停止功能。· stop():停止播放音频,调用该方法后,MediaPlayer 对象将无法再继续播放音频。运行程序运行程序之前需要在模拟器的“data/music”目录中复制音乐,然后运行程序,单击播放按钮就能看到如图13-9 所示的界面。图13-9测试音乐播放器

设计一个好用的音乐播放器的案例分析

下面通过一个“音乐播放器”的案例来演示如何使用服务来进行通信,具体步骤如下。

(1)创建程序

创建一个名为MusicPlayer 的应用程序,设计用户交互界面,具体如图13-8 所示。

图13-8 音乐播放器界面

布局文件activity_main.xml 代码如下:

(2)创建服务类MusicService

创建一个服务类MusicService,用于完成音乐的播放、暂停、重播、停止功能。MusicService 类的代码如下:

在Android 系统中,播放音频文件一般使用MediaPlayer 类来实现,下面介绍一下MediaPlayer 类中常用的方法:

· setAudioStreamType():指定音频文件的类型,必须在prepare()方法之前调用。

· setDataSource():设置要播放的音频文件的位置。

· prepare():在开始播放之前调用这个方法完成准备工作。

· start():开始或继续播放音频。

· pause():暂停播放音频。

· reset():将MediaPlayer 对象重置到刚刚创建的状态。(www.xing528.com)

· seekTo():从指定位置开始播放音频。

· stop():停止播放音频,调用该方法后,MediaPlayer 对象将无法再继续播放音频。

· release():释放与MediaPlayer 对象相关的资源。

· isPlaying():判断当前MediaPlayer 是否正在播放音频。

· getDuration():获取载入音频文件的时长。

· getCurrentPosition():获取当前播放音频文件的位置。

(3)清单文件的配置

在清单文件中添加如下代码:

(4)编写界面交互代码

需要在MainActivity 中实现播放、暂停、重播、停止按钮的点击操作,具体代码如下:

需要注意的是,在onDestroy()方法中,首先要停止子线程才能解绑服务。 因为子线程中调用了服务中的方法,如果先解绑就会报异常。

(5)运行程序

运行程序之前需要在模拟器的“data/music”目录中复制音乐,然后运行程序,单击播放按钮就能看到如图13-9 所示的界面。

图13-9 测试音乐播放器

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈