public class MainActivity extends Activity {
private EditText etPath;
private MediaPlayer mediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
etPath = (EditText) findViewById(R.id.et_path);
}
public void play(View v){
String path = etPath.getText().toString().trim();
if(TextUtils.isEmpty(path)){
Toast.makeText(this, "路径不能为空", 0).show();
return ;
}
File file = new File(path);
if(!file.exists()){
Toast.makeText(this, "非法的文件路径", 0).show();
return ;
}
try {
mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(path);//设置资源的路径
mediaPlayer.prepare();//播放器准备一下
mediaPlayer.setLooping(true);//这句代码就是让让其无限播放
mediaPlayer.start();//开始播放
} catch (Exception e) {
e.printStackTrace();
}
//文件损坏的时候,来到这里
mediaPlayer.setOnErrorListener(new OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
// TODO Auto-generated method stub
return false;
}
});
//播放完毕之后调用,一般用于做列表循环播放
mediaPlayer.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
}
});
}
public void pause(View v){
if(mediaPlayer.isPlaying()){
mediaPlayer.pause();//暂停播放
}else{
mediaPlayer.start();//开始播放
}
}
public void stop(View v){
mediaPlayer.stop();//结束播放
mediaPlayer.release();//释放资源
}
}
android_音乐的播放
最新推荐文章于 2022-10-27 15:03:27 发布
本文介绍了一个简单的Android应用程序,用于播放音频文件。通过MainActivity类实现,包括播放、暂停和停止等功能。程序首先检查文件路径的有效性,然后使用MediaPlayer进行音频播放,并处理错误和播放完成的情况。
2017

被折叠的 条评论
为什么被折叠?



