giphy.gif
常⽤⽅法:
videoView.start(); //开始播放 videoView.pause(); //暂停
videoView.stopPlayback(); //停⽌播放
videoView.isPlaying(); //获取是否在播放状态 videoView.setVideoURI(Uri uri); //设置视频播放uri videoView.setVideoPath(String path); //设置视频播放路径
videoView.seekTo(int msec); //跳转到设置时间
智慧交通沙盘
videoView.setMediaController(MediaController controller); //设置播放控制器
videoView.setOnPreparedListener(MediaPlayer.OnPreparedListener listener); //加载完成监听 videoView.setOnCompletionListener(MediaPlayer.OnCompletionListener listener); //设置播放完成监听videoView.setOnErrorListener(MediaPlayer.OnErrorListener listener); //播放失败监听
代码:
giphy.gif Mediaplayer状态图:
Mediaplayer状态图使⽤⽅式:
mediaPlayer.Holder());电锅炉制造
mediaPlayer.prepareAsync();
mediaPlayer.setOnPreparedListener(OnPreparedListener listener); mediaPlayer.start();
代码实现:
播放器类:
import android.annotation.TargetApi;
t.BroadcastReceiver;黄泥巴烤鸡
t.Context;
t.Intent;
t.IntentFilter;
头笼
aphics.Bitmap;
dia.MediaMetadataRetriever;
dia.MediaPlayer;
import android.os.Build;
import android.os.Handler;
import android.os.Message;
import android.view.LayoutInflater;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.SeekBar;
import android.widget.TextView;
ample.videoplayers.R;
import java.io.IOException;
import java.util.HashMap;
public class PlayVideo {
private Context context;
private View videoView;
废塑料炼油
public MediaPlayer mediaPlayer;
private boolean isDisplay = true;
private ProgressBroadCast progressBroadCast;
private SurfaceView surfaceView;
private Button btPlay;
private SeekBar seekBar;
private TextView tvTime;
private ImageView ivCover;
private LinearLayout relaVideo,llLoading;
/** 视频播放资源地址 */
private String mediaUrl;
private Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
if(null != msg){
ivCover.setImageBitmap((Bitmap) msg.obj);
}
}
};
public PlayVideo(Context context,String mediaUrl){
videoView = LayoutInflater.from(context).inflate(R.layout.custom_videoplayer,null); initView(videoView);
event();
}
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
private void initView(View view){
surfaceView = (SurfaceView) view.findViewById(R.id.surfaceview);
btPlay = (Button) view.findViewById(R.id.btn_play);
seekBar = (SeekBar) view.findViewById(R.id.play_seekbar);
钢骨柱tvTime = (TextView) view.findViewById(R.id.tv_video_time);
relaVideo = (LinearLayout) view.findViewById(la_video);
llLoading = (LinearLayout) view.findViewById(R.id.ll_video_loading);
ivCover = (ImageView) view.findViewById(R.id.iv_videoplayer_cover);
MyClickListener listener = new MyClickListener();
surfaceView.setOnClickListener(listener);
btPlay.setOnClickListener(listener);