Android中怎么利用MediaPlay播放音频和视频,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
实现MediaPlay的基本步骤是
创建MediaPlay对象
调用setDataSource对象这是音频文件路径
调用prepare加载音频
调用start开始播放
调用pause暂停
调用stop停止播放
而MediaPlay也有其他方法
getCurrentPosition,获得当前播放位置
getDuration,获得播放时长
isPlay,判断是否处于播放状态
release,释放资源
reset,回到最初的状态
seekTo,设置播放位置
setVolume,设置音量
private MediaPlayer mediaPlayer=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mediaPlayer=new MediaPlayer();
if(ContextCompat.checkSelfPermission(this,
Manifest.permission.READ_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED){
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.READ_EXTERNAL_STORAGE},1);
}else{
initMediaPlayer();
}
Button btPlayMp3= (Button) findViewById(R.id.btPlayMp3);
btPlayMp3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(!mediaPlayer.isPlaying()){
mediaPlayer.start();
}
}
});
Button btPauseMp3= (Button) findViewById(R.id.btPauseMp3);
btPauseMp3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mediaPlayer.isPlaying()){
mediaPlayer.pause();
}
}
});
Button btStopMp3= (Button) findViewById(R.id.btStopMp3);
btStopMp3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mediaPlayer.isPlaying()){
mediaPlayer.stop();
try {
mediaPlayer.prepare();
} catch (IOException e) {
e.printStackTrace();
}
}
}
});
}
private void initMediaPlayer(){
try {
File file=new File(Environment.getExternalStorageDirectory()+"/music","honor.mp3");
mediaPlayer.setDataSource(file.getPath());
mediaPlayer.prepare();
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
if(requestCode==1){
if(grantResults.length>0 && grantResults[0]==PackageManager.PERMISSION_GRANTED){
initMediaPlayer();
}else{
Toast.makeText(this,"未获得SD卡访问权限",Toast.LENGTH_LONG).show();
finish();
}
}
}
@Override
protected void onDestroy() {
if(mediaPlayer!=null){
mediaPlayer.stop();
mediaPlayer.release();
mediaPlayer=null;
}
super.onDestroy();
}
看完上述内容,你们掌握Android中怎么利用MediaPlay播放音频和视频的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:http://blog.itpub.net/69917874/viewspace-2680621/