Android视频音频播放
- 格式:doc
- 大小:123.00 KB
- 文档页数:27
1、课程名称:Android音频视频播放
2、知识点
2.1、上次课程的主要知识点
2.2、本次预计讲解的知识点
3、具体内容
3.1、Activity生命周期及其应用(重点)
Activity在创建到销毁的过程中也经历过多个方法来监听其生命周期执行过程。
其中,主要有以下几个方法:
1)onCreate:当Activity在创建后,自动执行此方法,来对Activity中的布局和组件进行一些初始化。2)onDestory:当Activity退出销毁时自动执行的方法,主要用来进行一些收尾和垃圾回收的工作。3)onStart
4)onResume
5)onPause
6)onStop
7)onRestart
使用一张流程图来查看整个Activity的生命周期。
生命周期的这些监听方法主要可以在以下功能中使用:
1)退出功能,可以在onCreate中记录下当前经历过的Activity类,在onDestory中将记录的Activity移除。只需要将打开过的所有Activity统一关闭,即可实现退出整个程序的功能。
2)当从详细界面返回到列表界面时,进行数据刷新功能。
3)onDestory中是否音乐播放器的内存。
应用生命周期的功能,实现面试宝典中的退出系统功能。
当点击退出时,需要将整个集合中所有的Activity关闭。
3.2、SeekBar拖动条(掌握)
使用SeekBar组件,可以实现一个拖动条,用来完成调整亮度,改变音乐播放位置等功能。
也可以加入监听功能。
3.3、音乐播放器(掌握)
在进行音频和视频播放时,都需要使用MediaPlayer类来加载音频或视频文件。
同时要注意,如果想使用模拟器播放音频时,不能使用snapshot。
同时还要注意,如果使用win7 + 模拟器播放音频时,必须使用管理员身份启动Eclipse,否则SD卡无法识别。
准备工作都完成后,可以开始初始化音频播放的类,MediaPlayer这个类也有自己的生命周期。
可以通过其API文档来查看生命周期的执行流程:
1)建立对象后,MediaPlayer对象会默认处于空闲状态(idle)
2)需要为其设置播放的数据来源(音频或视频文件)
3)调用prepare()方法,将里面的一些信息读入并准备好。
4)准备好后,才可以调用start()进行播放
5)如果设置了循环播放(looping=true)且歌曲已经播放完成,则会自动重新播放。
6)在播放状态下,调用pause()方法会进入暂停状态,再次调用start()即可继续播放。
7)如果没有设置循环播放(Looping= false),且音乐播放完成,会自动进入播放完成状态,这时如果再次调用start(),则会重新开始当前歌曲的播放。
8)停止状态不会自动进入,必须调用stop方法才会进入这个状态。
9)如果想完整的释放所有内存,需要调用release()方法来完成。
这里先完成一个基本的歌曲播放功能,没有界面。
设计界面,加入播放,暂停,上一首,下一首,以及所有歌曲列表等界面组件。
完成各种音乐播放的操作功能。
合并之前的文件选择器,使选择器只能选择mp3,点某个mp3时,切换到播放音乐的界面,并将mp3的完整路径传入,以便进行播放。
文件管理器部分代码自行参考项目中的FileListActivity即可。
下面实现播放列表的功能。
当选择某一首歌曲后,自动将该歌曲加入到整个播放列表中,每次进入播放歌曲的界面时,查询出所有的播放列表中的歌曲,并加入到ListView里,供用户选择。
这样就需要建立一张歌曲表,保存所有的歌曲,主键是歌曲的完整路径。
设置监听,当点歌曲时,不光将其切换到下一个界面,还要将其保存到数据库中。
如果想实现一些特定的功能,例如改变当前显示歌曲的背景颜色等,就需要自行声明自定义的Adapter,在自己建立的View 中来完成,而不能使用系统提供的Adapter。
4、总结
1、生命周期的整个概念,已经退出系统的应用
2、拖动条的事件监听功能
3、基本的音乐播放功能。
5、预习任务
1、ContentProvider调用其他应用的数据库
2、读取SD卡中所有的音频文件,并读取里面的各种属性
3、读取手机通讯录,以及通话记录
4、拨打电话
6、作业