2017-03-11 9 views
1

私はこのエラーに関して何度も話題を読んだことがあります。E/MediaPlayer:エラー(-19、0) - 理由なし

私は

E/MediaPlayerのを取得しています:エラー(-19、0)

E/MediaPlayerの:エラー(-19,0)

しかし、音楽は再生されません。最初の数回は完全に機能しましたが、音楽が完全に再生されてからアプリが終了した後、アプリを開くたびに音楽は起動しません。

mp1 = MediaPlayer.create(this,R.raw.shavingmirror_bgmusic); 
    mp1.start(); 

動作するように使用された元のコードを、今何らかの理由(新しいクラスの内部に位置していません:、これは私が(メイン活動中のonCreate内)の試験に使用していたコード非常に簡単ですonCreate、メインアクティビティではない)、SeekBarを基本的に持つだけで、音楽の音量はSeekBarに応じて&になるはずです:

public class settings extends AppCompatActivity implements SeekBar.OnSeekBarChangeListener { 

MediaPlayer mp; 
SeekBar sb; 
AudioManager am; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.settings); 
    sb = (SeekBar)findViewById(R.id.volumesb); 
    mp = MediaPlayer.create(this,R.raw.shavingmirror_bgmusic); 
    mp.start(); 
    mp.setLooping(true); 

    am=(AudioManager)getSystemService(Context.AUDIO_SERVICE); 
    int max = am.getStreamMaxVolume(AudioManager.STREAM_MUSIC); 
    sb.setMax(max); 
    sb.setProgress(max/2); 
    am.setStreamVolume(AudioManager.STREAM_MUSIC,max/2,0); 
    sb.setOnSeekBarChangeListener(this); 

} 

@Override 
protected void onPause() { 
    super.onPause(); 
    mp.release(); 
} 


@Override 
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
    am.setStreamVolume(AudioManager.STREAM_MUSIC,progress,0); 
} 

答えて

1

私はmpをリリースせず、クラッシュして再び動作しないという問題があるようです。これを修正するには、

  • エミュレータを再起動してください。今、私はMP毎回をリリースしていますよう

がうまくいけば、この問題は、自分自身を繰り返すことはしません。(mp.releaseを())

  • はそれにいくつかのリリースを追加します。それが繰り返されるなら、私はこれを更新します。

  • 関連する問題