错误:调用需要API级别23(当前最小值为15):

时间:2015-11-01 21:06:29

标签: java android audio android-mediaplayer playback

我试图在我的代码中访问PlaybackParams类的方法,但它给了我这个错误:

  

调用需要API级别23(当前最小值为   15):android.media.PlaybackParams#PlaybackParams

这首歌正在播放(不是很流畅,像在youtube视频中那样缓和),但设定的速度并没有增加歌曲的速度。 此外,seekTo()方法可以正常工作,但setSpeed()方法并不适用。 我一直试图找出代码中的错误,但还没找到我的方法。

另外,如果我删除整个实现和PlaybackParams'方法然后只有歌曲播放否则(与提供的代码一样)它会抛出许多(-38,0)错误并且此错误也是:
Attempt to perform seekTo in wrong state: mPlayer=0xad7a2460, mCurrentState=0

我知道state =0错误意味着它在加载之前尝试启动这首歌,但我不知道如何让所有内容都正确到位。

这是我的代码:

MediaPlayer mySong;
PlaybackParams params = new PlaybackParams();

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mySong = MediaPlayer.create(this, R.raw.fixyou);
}
public void musicPlayer (View view) {

        mySong.seekTo(20000);
        params.setSpeed(0.75f);
        mySong.setPlaybackParams(params);
        mySong.start();
    }

1 个答案:

答案 0 :(得分:0)

使用API​​ 23在模拟器或真实设备上运行程序,因为API 23新添加了PlaybackParams类,而较低的API则不存在。