使用MediaPlayer播放音频-----之二

Posted 奋斗青年一族

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用MediaPlayer播放音频-----之二相关的知识,希望对你有一定的参考价值。

MediaPlayer播放不同来源的音频文件:

一、播放应用的资源文件

     1.调用MediaPlayer的create(Context  context , int  resid)方法加载指定资源文件。

     2.调用MediaPlayer的start()、pause()、stop()等方法控制播放即可。

  注:音频资源文件一般放在android应用的/res/raw目录下。

二、播放应用的原始资源文件

  1.调用Context的getAssets()方法获取应用的AssetManager。

  2.调用AssetManager对象的openFd(String  name)方法打开指定的原生资源,该方法返回一个AssetFileDescriptor对象。

  3.调用AssetFileDescriptor的getFileDescriptor()、getStartOffset()和getLength()方法来获取音频文件的FileDescriptor、开始位置、长度等。

  4.创建MediaPlayer对象,并调用MediaPlayer对象的setDataResource(FileDescriptor  fd , long  offset  ,long  length )方法来装载音频资源。

  5.调用MediaPlayer对象的prepare()方法准备音频。

  6.调用MediaPlayer的start()、pause()、stop()等方法控制播放即可。

  注:虽然MediaPlayer提供了setDataSource(FileDescriptor  fd)方法来装载指定音频资源,但实际使用时这个方法似乎有问题:不管程序调用openFf(String  name)方法

  时指定打开哪个原始资源,MediaPlayer将总是播放第一个原始的音频资源。

三、播放外部存储器上音频文件。

  1.创建MediaPlayer对象,并调用MediaPlayer对象的setDataSource(String  path)方法装载指定音频文件。

  2.调用MediaPlayer对象的prepare()方法准备音频。

  3。调用MediaPlayer的start()、stop()等方法控制播放即可。

四、播放来自网络的音频文件

  播放来自网络的音频文件有两种方式:

  1.直接使用MediaPlayer的静态create(Context  context , Uri  uri)方法;

  2.调用MediaPlayer的setDataSource(Context  context  Uri  uri)装载指定Uri对应的音频文件。

  以第二种方式播放来自网络的音频文件的步骤:

        1.根据网络上的音频文件所在的位置创建Uri对象。

    2.创建MediaPlayer对象,并调用MediaPlayer对象的setDataSource(Context  context  ,Uri  uri)方法装载Uri对应的音频文件。

    3.调用MediaPlayer对象的prepare()方法准备音频。

    4.调用MediaPlayer的start()、pause()、stop()等方法控制播放即可。

以上是关于使用MediaPlayer播放音频-----之二的主要内容,如果未能解决你的问题,请参考以下文章

使用 MediaPlayer 多次播放音频

在 Android 中使用 MediaPlayer 播放音频文件

Android多媒体功能开发——使用MediaPlayer类播放音频

使用MediaPlayer播放音频文件

android:使用单个 mediaplayer 对象播放音频文件并显示图像

Android播放音频MediaPlayer的几种方式介绍