温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android开发之MediaPlayer多媒体(音频,视频)播放工具类

发布时间:2020-08-27 21:13:38 来源:脚本之家 阅读:221 作者:LovooGod 栏目:移动开发

本文实例讲述了Android开发之MediaPlayer多媒体(音频,视频)播放工具类。分享给大家供大家参考,具体如下:

package com.android.imooc.chat;
import java.io.IOException;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnErrorListener;
/**
 * @描述 声音控制类
 * @项目名称 App_imooc
 * @包名 com.android.imooc.chat
 * @类名 MediaHelper
 * @author chenlin
 * @date 2013年6月17日 下午10:46:01
 * @version 1.0
 */
public class MediaHelper {
  private static MediaPlayer mPlayer;
  private static boolean isPause = false;
  public static void playSound(String filePath, OnCompletionListener listener) {
    if (mPlayer == null) {
      mPlayer = new MediaPlayer();
    } else {
      mPlayer.reset();
    }
    mPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    mPlayer.setOnCompletionListener(listener);
    mPlayer.setOnErrorListener(new OnErrorListener() {
      @Override
      public boolean onError(MediaPlayer mp, int what, int extra) {
        mPlayer.reset();
        return false;
      }
    });
    try {
      mPlayer.setDataSource(filePath);
      mPlayer.prepare();
    } catch (IllegalArgumentException e) {
      e.printStackTrace();
    } catch (SecurityException e) {
      e.printStackTrace();
    } catch (IllegalStateException e) {
      e.printStackTrace();
    } catch (IOException e) {
      throw new RuntimeException("读取文件异常:" + e.getMessage());
    }
    mPlayer.start();
    isPause = false;
  }
  public static void pause() {
    if (mPlayer != null && mPlayer.isPlaying()) {
      mPlayer.pause();
      isPause = true;
    }
  }
  // 继续
  public static void resume() {
    if (mPlayer != null && isPause) {
      mPlayer.start();
      isPause = false;
    }
  }
  public static void release() {
    if (mPlayer != null) {
      mPlayer.release();
      mPlayer = null;
    }
  }
}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android视图View技巧总结》、《Android编程之activity操作技巧总结》、《Android操作json格式数据技巧总结》、《Android资源操作技巧汇总》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI