首页 理论教育 Android游戏开发教程-使用网络MP3作为游戏音效

Android游戏开发教程-使用网络MP3作为游戏音效

时间:2023-10-22 理论教育 版权反馈
【摘要】:为了节约手机的存储空间,在听音乐时可以以网络下载的方式播放MP3。接下来将通过一个具体实例的实现过程,详细讲解使用MediaPlayer播放网络中MP3的流程。当程序关闭后,删除SD卡中的临时性文件。2)使用strVideoURL设置要播放MP3文件的网址,并设置透明度。具体代码如下13)如果有异常则输出提示,具体代码如下14)定义函数setDataSource用于存储URL的MP3文件到存储卡。执行后可以通过播放、暂停、重新播放和停止四个按钮控制指定的MP3音乐,如图7-4所示。

Android游戏开发教程-使用网络MP3作为游戏音效

为了节约手机的存储空间,在音乐时可以以网络下载的方式播放MP3。接下来将通过一个具体实例的实现过程,详细讲解使用MediaPlayer播放网络中MP3的流程。

978-7-111-54543-9-Part02-342.jpg

在本实例中插入了4个Button按钮,分别用于播放、暂停、重新播放和停止处理。执行后通过Runnable发起运行线程,在线程中远程下载指定的MP3文件,下载功能是通过网络传输的方式下载的。下载完毕后将文件临时保存到SD卡中,这样可以通过4个按钮对其进行控制。当程序关闭后,删除SD卡中的临时性文件。

实例文件example.java的具体实现流程如下所示。

(1)定义currentFilePath用于记录当前正在播放MP3的URL地址,定义currentTemp FilePath表示当前播放MP3的路径。具体代码如下。

978-7-111-54543-9-Part02-343.jpg

2)使用strVideoURL设置要播放MP3文件的网址,并设置透明度。具体代码如下

978-7-111-54543-9-Part02-344.jpg

978-7-111-54543-9-Part02-345.jpg

3)编写单击“播放”按钮所触发的处理事件,具体代码如下

978-7-111-54543-9-Part02-346.jpg

4)编写单击“重播”按钮所触发的处理事件,具体代码如下

978-7-111-54543-9-Part02-347.jpg

5)编写单击“暂停”按钮所触发的处理事件,具体代码如下

978-7-111-54543-9-Part02-348.jpg

978-7-111-54543-9-Part02-349.jpg

6)编写单击“停止”按钮所触发的处理事件,具体代码如下

978-7-111-54543-9-Part02-350.jpg

978-7-111-54543-9-Part02-351.jpg

7)定义方法playVideo(final String strPath)来播放指定的MP3文件,其播放的是存储卡中暂时保存的MP3文件,具体代码如下。

978-7-111-54543-9-Part02-352.jpg

8)编写setOnErrorListener来监听错误处理,具体代码如下

978-7-111-54543-9-Part02-353.jpg(www.xing528.com)

9)编写setOnBufferingUpdateListener来监听MediaPlayer缓冲区的更新,具体代码如下

978-7-111-54543-9-Part02-354.jpg

10)编写setOnCompletionListener来监听播放完毕所触发的事件,具体代码如下

978-7-111-54543-9-Part02-355.jpg

11)编写setOnPreparedListener来监听开始阶段的事件,具体代码如下

978-7-111-54543-9-Part02-356.jpg

12)将文件存到SD卡后,通过方法mMediaPlayer01.start()播放MP3。具体代码如下

978-7-111-54543-9-Part02-357.jpg

978-7-111-54543-9-Part02-358.jpg

13)如果有异常则输出提示,具体代码如下

978-7-111-54543-9-Part02-359.jpg

14)定义函数setDataSource用于存储URL的MP3文件到存储卡。首先判断传入的地址是否为URL,然后创建URL对象和临时文件。具体代码如下。

978-7-111-54543-9-Part02-360.jpg

978-7-111-54543-9-Part02-361.jpg

15)定义方法getFileExtension(String strFileName)获取音频文件的扩展名,如果无法顺利获取扩展名,则默认为“.dat”。具体代码如下。

978-7-111-54543-9-Part02-362.jpg

16)定义方法delFile(String strFileName)设置当离开程序时删除临时音乐文件,具体代码如下。

978-7-111-54543-9-Part02-363.jpg

978-7-111-54543-9-Part02-364.jpg

执行后可以通过播放、暂停、重新播放和停止四个按钮控制指定的MP3音乐,如图7-4所示。

978-7-111-54543-9-Part02-365.jpg

图7-4 执行效果

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

我要反馈