您的位置:首页 > 移动开发 > Android开发

android 视频播放器

2017-02-13 19:45 162 查看
代码如下

package com.example.android_camera;

import android.os.Bundle;
import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.net.Uri;
import android.view.Menu;
import android.view.SurfaceView;
import android.view.View;
import android.widget.ImageButton;
import android.widget.SeekBar;
import android.widget.SeekBar.OnSeekBarChangeListener;

public class MainActivity extends Activity {

private MediaPlayer mediaPlayer;
private SeekBar seekBar;
private SurfaceView surfaceView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
seekBar = (SeekBar) findViewById(R.id.seekBar1);
surfaceView = (SurfaceView) findViewById(R.id.sv_main_video);
seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {

@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
//获取拖动结束后的位置
int progress=seekBar.getProgress();
mediaPlayer.seekTo(progress);
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
// TODO Auto-generated method stub
}
});

}
public void isplayOrPause(View view){
final ImageButton imageButton=(ImageButton) view;

if(mediaPlayer==null){
//播放内手机内存卡中的视频
mediaPlayer=new MediaPlayer();
//设置类型
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
//设置音源
try {
mediaPlayer.setDataSource(this,Uri.parse("file://Download/sister.mp4"));
//准备一下(获取内存卡中的视频)
mediaPlayer.prepare();
mediaPlayer.setDisplay(surfaceView.getHolder());
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
mediaPlayer.start();
//吧图标修改为暂停的图标
imageButton.setImageResource(android.R.drawable.ic_media_pause);

//获取音乐的总时长
int duration=mediaPlayer.getDuration();
//设置进度条的最大值为音乐的总时长
seekBar.setMax(duration);

new MyThread().start();
}else if(mediaPlayer.isPlaying()){
mediaPlayer.pause();
//把图图标修改为播放的图标
imageButton.setImageResource(android.R.drawable.ic_media_play);
}else{
mediaPlayer.start();
//把图标修改为暂停图标
imageButton.setImageResource(android.R.drawable.ic_media_pause);

}
}

class MyThread extends Thread{
@Override
public void run() {
// TODO Auto-generated method stub
super.run();

while(seekBar.getProgress()<=seekBar.getMax()){
//获取当前音乐的位置
int currentPosition=mediaPlayer.getCurrentPosition();
//让进度条动起来
seekBar.setProgress(currentPosition);
}
}
}
}


权限

<!--  读取内存卡的权限 -->
<permission android:name="android.permission.READ_EXTERNAL_STORAGE"></permission>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: