RuntimeException:MediaPlayer启动时失败代码-38

时间:2016-07-12 04:34:14

标签: android android-mediaplayer

当我启动MediaPlayer时出现异常,在大多数情况下我认为它是一个IllegalStateException,但是我遇到了RuntimeException:

java.lang.RuntimeException: failure code: -38
    at android.media.MediaPlayer.invoke(MediaPlayer.java:694)
    at android.media.MediaPlayer.getInbandTrackInfo(MediaPlayer.java:1944)
    at android.media.MediaPlayer.getTrackInfo(MediaPlayer.java:1923)
    at android.media.MediaPlayer.start(MediaPlayer.java:1205)

我不知道为什么会出现这个问题,任何人都可以帮忙解决这个问题吗?感谢。

这是我的代码:

TelephonyManager telephonyManager = (TelephonyManager) getContext().getSystemService(Service.TELEPHONY_SERVICE);
telephonyManager.listen(new PhoneStateListener() {
    @Override
    public void onCallStateChanged(int state, String incomingNumber) {
        super.onCallStateChanged(state, incomingNumber);
        switch (state) {
            case TelephonyManager.CALL_STATE_RINGING:
                if (player != null)
                    pause();
                break;
            case TelephonyManager.CALL_STATE_OFFHOOK:
                break;
            case TelephonyManager.CALL_STATE_IDLE:
                if (player != null)
                    start();       // <-- RuntimeException
                break;
        }
    }
}, PhoneStateListener.LISTEN_CALL_STATE);

0 个答案:

没有答案