MediaPlayer.setAudioStreamType()方法过时用setAudioAttributes()方法替代

在Android中创建MediaPlayer() 有两种方法

  1. 第一种 :
MediaPlayer mp = MediaPlayer.create(Context,R.raw.xxx);

或者

MediaPlayer mp = MediaPlayer.create(Context,Uri.parse(String));

使用这种方法不用执行mp.prepare()语句,在create()语句中会自动执行的,直接可以执行mp.start()播放文件。
注意:
R.raw.xxx中的xxx文件不能过大,否则mp会实例化失败,返回一个null

  1. 第二种
MediaPlayer mp = new MediaPlayer();

以前使用setAudioStreamType()设置文件的格式的步骤是:

mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
    
    
    mediaPlayer.setDataSource("/sdcard/song.mp3");
    mediaPlayer.prepare();
    mediaPlayer.start();
} catch (IOException e) {
    
    
    e.printStackTrace();
}

现在官方给的文档说这个方法setAudioStreamType()过时了,可以使用这个方法代替setAudioAttributes(),步骤是:

mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioAttributes(new AudioAttributes
           .Builder()
           .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
           .build());
try {
    
    
     mediaPlayer.setDataSource("/sdcard/song.mp3");
     mediaPlayer.prepare();
     mediaPlayer.start();
 } catch (IOException e) {
    
    
     e.printStackTrace();
 }

完结

猜你喜欢

转载自blog.csdn.net/weixin_44355077/article/details/115484798