2016-07-29 29 views
0

Wie stelle ich die Startposition mit dem Android MediaPlayer ein?Wie stelle ich die Startposition mit dem Android MediaPlayer ein

Nachdem ich eine Spur pausiert habe, rufe ich startMusic() an, aber anstatt weiterzumachen, beginnt der MediaPlayer von Anfang an zu spielen.

Mein Code:

public void pauseMusic() { 
    if(playMusic.isPlaying()) { 
     playMusic.pause(); 
    } 

public void playMusic() { 
    playMusic.start(); 
    playMusic.seekTo(0); 
} 

Wenn ich rufe stopMusic() es führt den folgenden Fehler:

Process: com.example.kq.meetthevwls, PID: 30166 
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.media.MediaPlayer.start()' on a null object reference 
+0

Das bedeutet, dass Ihr „Playmusic“ Objekt dereferenziert wurde oder wurde nie an erster Stelle verwiesen wird. Es hat nichts mit Suchen zu tun. – DeeV

+0

aber es spielt .. wieder, dass Musik, aber ich brauche Startposition –

+0

Um die zuletzt gespielte Position oder Pause Position videoView.getCurrentPosition() zu erhalten und zuletzt gespielt Position zu verwenden videoView.seekTo (lastPlayedPosition) – LvN

Antwort

-1

Der Fehler verursacht wird, nicht durch stopMusic() sondern durch die start() Methode. Sie haben das Objekt MediaPlayer wahrscheinlich nicht initialisiert. Wenn Sie also start() aufrufen, stürzt es ab, weil das Objekt NULL ist.

Versuchen Sie, mit so etwas wie dieses:

playMusic = MediaPlayer.create(YourActivity.this, R.raw.your_sound_name); 

Ändern Sie Ihre Aktivität Namen und den Ressourcensoundnamen

+0

danke ich werde Versuchen Sie –

+1

, wie dies den Media Player fortsetzen soll? –