- 浏览: 404378 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
rkikbs:
有下载地址么?
我的iOS视频开放了,欢迎大家在线观看 -
wjpiao:
支持支持!
我的iOS视频开放了,欢迎大家在线观看 -
关东升:
wwwang89 写道关老师,你好 ,请问:我的服务器端是用j ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
wwwang89:
关老师,你好 ,请问:我的服务器端是用java写的,不是.ne ...
iOS网络编程-ASIHTTPRequest框架同步请求 -
关东升:
crowning_2008 写道关老师 好!你好
iOS开发那些事-关于性能优化–选择nib还是故事板的讨论
播放音频文件。按照音频文件来源不同可以分为:资源文件播放、系统播放文件和网络文件播放。
资源文件播放是放在“<工程>/res/raw”,然后发布的时候被打成APK包一起安装在手机上。很显然这种方式不适合用于播放娱乐为主的多媒体文件,由于娱乐的多媒体文件是经常更新的,而放置在这个raw下面的文件用户是没有权限更新的,因此这种方式一般用于应用自己的一些音频和视频播放,如按键音、开机启动音、信息提示音等应用使用的声音。
下面看看播放资源音频文件的代码请参考代码清单12-1,完整代码请参考Chapter12_1工程中AudioPlayer代码部分。
【代码清单12-1】
上面的代码只是实现了播放、暂停、停止功能,下一首、上一首和进度控制条的功能没有实现。文件放在raw目录下面调用play()方法实现了播放功能,mMediaPlayer = MediaPlayer.create(this, R.raw.ma_mma)是创建MediaPlayer,通过mMediaPlayer.setOnPreparedListener(preListener)设置了OnPreparedListener监听器,它是监听文件预处理完成之后事件。
预处理完成之后MediaPlayer进入prepared状态,调用start()方法是播放媒体文件方法,同时把播放标志设置为PLAYING状态。
播放流程如图12-5所示。
图12-5播放流程
下面是暂停功能播放实现,MediaPlayer的pause()方法实现了媒体暂停,并把标志设定为PAUSE。
下面是停止功能播放实现,MediaPlayer的stop()方法实现了媒体停止,并把标志设定为STOP。
出自《Andorid开发案例驱动教程》
资源文件播放是放在“<工程>/res/raw”,然后发布的时候被打成APK包一起安装在手机上。很显然这种方式不适合用于播放娱乐为主的多媒体文件,由于娱乐的多媒体文件是经常更新的,而放置在这个raw下面的文件用户是没有权限更新的,因此这种方式一般用于应用自己的一些音频和视频播放,如按键音、开机启动音、信息提示音等应用使用的声音。
下面看看播放资源音频文件的代码请参考代码清单12-1,完整代码请参考Chapter12_1工程中AudioPlayer代码部分。
【代码清单12-1】
public class AudioPlayer extends Activity { private ImageButton play; private ImageButton stop; private MediaPlayer mMediaPlayer; private int state = IDLE; private static final int PLAYING = 0; private static final int PAUSE = 1; private static final int STOP = 2; private static final int IDLE = 3; public static final int UPDATE = 2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.audio_player); // 初始化播放按钮 play = (ImageButton) findViewById(R.id.play); play.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { if (state == PLAYING) { pause(); } else { start(); } } }); // 初始化停止按钮 stop = (ImageButton) findViewById(R.id.stop); stop.setOnClickListener(new Button.OnClickListener() { public void onClick(View v) { stop(); } }); // 开始播放歌曲 play(); } private void pause() { if (mMediaPlayer.isPlaying()) { mMediaPlayer.pause(); state = PAUSE; } play.setImageResource(R.drawable.play); } private void start() { if (state == STOP) { play(); } else if (state == PAUSE) { mMediaPlayer.start(); state = PLAYING; } play.setImageResource(R.drawable.pause); } private void stop() { mMediaPlayer.stop(); state = STOP; play.setImageResource(R.drawable.play); } // MediaPlayer进入prepared状态开始播放 private OnPreparedListener preListener = new OnPreparedListener() { public void onPrepared(MediaPlayer arg0) { mMediaPlayer.start(); state = PLAYING; } }; private void play() { try { if (mMediaPlayer == null || state == STOP) { // 创建MediaPlayer对象并设置Listener mMediaPlayer = MediaPlayer.create(this, R.raw.ma_mma); mMediaPlayer.setOnPreparedListener(preListener); } else { // 复用MediaPlayer对象 mMediaPlayer.reset(); } } catch (Exception e) { e.printStackTrace(); } } }
上面的代码只是实现了播放、暂停、停止功能,下一首、上一首和进度控制条的功能没有实现。文件放在raw目录下面调用play()方法实现了播放功能,mMediaPlayer = MediaPlayer.create(this, R.raw.ma_mma)是创建MediaPlayer,通过mMediaPlayer.setOnPreparedListener(preListener)设置了OnPreparedListener监听器,它是监听文件预处理完成之后事件。
private void play() { try { if (mMediaPlayer == null || state == STOP) { // 创建MediaPlayer对象并设置Listener mMediaPlayer = MediaPlayer.create(this, R.raw.ma_mma); mMediaPlayer.setOnPreparedListener(preListener); } else { // 复用MediaPlayer对象 mMediaPlayer.reset(); } } catch (Exception e) { e.printStackTrace(); } }
预处理完成之后MediaPlayer进入prepared状态,调用start()方法是播放媒体文件方法,同时把播放标志设置为PLAYING状态。
private OnPreparedListener preListener = new OnPreparedListener() { public void onPrepared(MediaPlayer arg0) { mMediaPlayer.start(); state = PLAYING; } };
播放流程如图12-5所示。
图12-5播放流程
下面是暂停功能播放实现,MediaPlayer的pause()方法实现了媒体暂停,并把标志设定为PAUSE。
private void pause() { if (mMediaPlayer.isPlaying()) { mMediaPlayer.pause(); state = PAUSE; } play.setImageResource(R.drawable.play); }
下面是停止功能播放实现,MediaPlayer的stop()方法实现了媒体停止,并把标志设定为STOP。
private void stop() { mMediaPlayer.stop(); state = STOP; play.setImageResource(R.drawable.play); }
出自《Andorid开发案例驱动教程》
发表评论
-
智捷课堂改版啦!
2015-08-04 12:09 1新站上线,为庆祝网站改版,全站所有视频限时免费三天(8月5日 ... -
《Android开发案例驱动教程》之十五章云端应用整篇下载
2011-12-08 18:08 1084《Android开发案例驱动教程》15章--云端应用[colo ... -
《Android开发案例驱动教程》源码
2011-12-08 17:57 1226《Android开发案例驱动教程》15,16,17章源码 目 ... -
android中google“定位查询”
2011-08-03 15:18 1163“定位查询”locate()方法,增加一个线程,在该线程中处理 ... -
7.1.5 选项卡结合案例详解
2011-07-27 08:58 1417选项卡是通过TabHost和TabActivity一起实现的, ... -
7.1.4 ScrollView结合案例详解
2011-07-26 17:50 2090ScrollView是一个滚动条控件,当屏幕中内容很多时候需要 ... -
7.1.3 TimePicker结合案例详解
2011-07-25 17:06 3188TimePicker是Android的时间设置控件。TimeP ... -
7.1.2 DatePicker结合案例详解
2011-07-23 15:56 1585DatePicker是Android的日期设置控件。DateP ... -
7.1.1 ImageSwitcher案例分析详解
2011-07-21 10:50 2134ImageSwitcher图像切换器,可以切换器图像。Imag ... -
7.5 TableLayout布局详解
2011-07-20 10:17 1995TableLayout表格布局,将子元素的位置分配到行或列中。 ... -
7.4 AbsoluteLayout布局详解
2011-07-19 16:35 4541AbsoluteLayout绝对布局,指定了子元素准确的x/y ... -
7.3 RelativeLayout布局详解
2011-07-19 14:11 999RelativeLayout相对布局, 允许子元素指定他们相对 ... -
7.2 LinearLayout布局详解
2011-07-18 10:23 1024LinearLayout线性布局,线性布局是所有布局中最常用的 ... -
6.4 Android国际化和本地化
2011-07-14 15:37 1549何谓国际化和本地化呢?就是在资源文件夹res内建立不同国家语言 ... -
6.1.6 Gallery结合案例详解
2011-07-13 17:04 1437Gallery(相册)控件是个很不错的图片查看控件,屏幕中有一 ... -
6.1.5 GridView详解
2011-07-13 09:25 1662Android中的数据能够通过GridView类实现表格化展现 ... -
6.2 Toast 详解
2011-07-12 17:02 856Toast用于向用户显示一些帮助或提示,有三种展现形式: • ... -
ListView分页(带图片)显示用法案例
2011-07-11 17:01 3084ListView是Android中最为常用的列表类型控件,Li ... -
Spinner用法案例
2011-07-11 15:26 2887Spinner控件也是一种列表类型的控件,它的继承关系如下: ... -
Android多媒体--网络文件播放
2011-07-08 15:22 1761网络文件就是指放在网络上的文件,也可能是流媒体等网络资源。由于 ...
相关推荐
Android 项目是使用 Android 操作系统和相关开发工具开发的一款移动应用程序。Android 平台提供了丰富的功能和接口,开发人员可以使用 Java 或 Kotlin 等编程语言编写 Android 应用程序。Android 项目也可以是针对...
【第一版第九章】老罗Android开发视频--存储数据和文件(7集) 【第一版第十章】老罗Android开发视频--对话框介绍(4集) 【第一版第十一章】老罗Android开发视频--通知的使用(2集) 【第一版第十二章】老罗...
提供了全面的Android多媒体开发指南。内容涵盖了Android系统的整体架构、多媒体架构的详细介绍,以及OpenCore平台的核心概念和代码结构。深入探讨了文件格式处理、编解码技术,以及OpenMAX的功能。此外,还提供了...
10.1.1 播放媒体资源 318 10.1.2 录制多媒体 319 10.2 使用摄像头 321 10.2.1 控制摄像头设置 321 10.2.2 使用摄像头预览 321 10.2.3 照相 322 10.3 Sensor Manager简介 323 10.4 使用加速计和指南针 324 ...
Android Android Android Android 开发背景 � 计算技术、无线接入技术的发展,使嵌入式系统逐渐有能力对桌面系统常规业务进行支持。 � 谷歌长期以来奉行的移动发展战略:通过与全球各地的手机制造商和移动运营商...
平时用到的二进制源文件raw、颜色colors、图形drawables和多媒体文件media的相关资源均通过该类来管理。 int getColor(int id) 对应res/values/colors.xml Drawable getDrawable(int id) 对应res/drawable/ ...
Android多媒体实例大汇集(源码,全) Android中利用画图类和线程画出闪烁的心形,送给亲爱的他 android自带的示例程序 BluetoothChat 变蓝牙串口助手(内含DIY蓝牙遥控车附源码实例教程) Android高手过招 FAQ ...
12.2.3 资源音频文件播放 287 12.2.4 本地音频文件播放 291 12.2.5 网络音频文件播放 292 12.2.6 完善案例其他功能 293 12.3 Android音频录制 303 12.3.1 Android音频/视频录制状态 303 12.3.2 音频录制案例...
Android 项目是使用 Android 操作系统和相关开发工具开发的一款移动应用程序。Android 平台提供了丰富的功能和接口,开发人员可以使用 Java 或 Kotlin 等编程语言编写 Android 应用程序。Android 项目也可以是针对...
7.8 播放mp3资源文件 7.9 录制音频 7.10 实现相机拍照功能 7.10.1 实现原理 7.10.2 编程思想 7.10.3 具体实现 7.11 自制3gp影片播放器 7.12 小结 第8章 网络编程 8.1 http参数传递 8.2 浏览网页 8.3 使用html代码 ...
7.9 播放mp3资源文件——raw文件夹与MediaPlayer的使用 7.10 播放存储卡里的mp3音乐——MediaPlayer.setDataSource 7.11 自制录音/播放录音程序——MediaRecorder与AudioEncoder 7.12 通过收到短信开始秘密录音——...
7.9 播放mp3资源文件——raw文件夹与MediaPlayer的使用 7.10 播放存储卡里的mp3音乐——MediaPlayer.setDataSource 7.11 自制录音/播放录音程序——MediaRecorder与AudioEncoder 7.12 通过收到短信开始秘密录音——...
阿里云java sdk源码 title tags keywords categories Android-Classical-OpenSource Android Android, ...公共库、高版本向低版本兼容库、多媒体、事件总线、传感器、安全、插件化、文件、其他 Android
7.9 播放mp3资源文件 433 7.10 播放存储卡里的mp3音乐 438 7.11 自制录音/播放录音程序 443 7.12 通过收到短信开始秘密录音 447 7.13 内置影片播放器载入3gp电影 451 7.14 自制3gp影片播放器 455 ...
7.9 播放mp3资源文件——raw文件夹与MediaPlayer的使用 7.10 播放存储卡里的mp3音乐——MediaPlayer.setDataSource 7.11 自制录音/播放录音程序——MediaRecorder与AudioEncoder 7.12 通过收到短信开始秘密录音——...
7.9 播放mp3资源文件 7.10 播放存储卡里的mp3音乐 7.11 自制录音/播放录音程序 7.12 通过收到短信开始秘密录音 7.13 内置影片播放器载入3gp电影 7.14 自制3gp影片播放器 7.15 相机预览及拍照临时文件 7.16 拍照瞬间...
7.9 播放mp3资源文件 7.10 播放存储卡里的mp3音乐 7.11 自制录音/播放录音程序 7.12 通过收到短信开始秘密录音 7.13 内置影片播放器载入3gp电影 7.14 自制3gp影片播放器 7.15 相机预览及拍照临时文件 7.16 拍照瞬间...
7.9 播放mp3资源文件 7.10 播放存储卡里的mp3音乐 7.11 自制录音/播放录音程序 7.12 通过收到短信开始秘密录音 7.13 内置影片播放器载入3gp电影 7.14 自制3gp影片播放器 7.15 相机预览及拍照临时文件 7.16 拍照瞬间...
7.9 播放mp3资源文件 7.10 播放存储卡里的mp3音乐 7.11 自制录音/播放录音程序 7.12 通过收到短信开始秘密录音 7.13 内置影片播放器载入3gp电影 7.14 自制3gp影片播放器 7.15 相机预览及拍照临时文件 7.16 拍照瞬间...