java - Stop and play mp3 in mediaplayer -


i have placed 2 mp3 songs in raw folder. have used 2 buttons play them. calling below:

public class songs extends activity implements onclicklistener {      private button mbtn1, mbtn2, mbtn3, mbtn4, mbtn5, mbtn6, mbtn7, mbtn8, mbtn9, mbtn10;     mediaplayer mp;     boolean playing = false;       @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.songs);          mbtn1 = (button) findviewbyid(r.id.button1);         mbtn2 = (button) findviewbyid(r.id.button2);          mbtn1.setonclicklistener(this);         mbtn2.setonclicklistener(this);     }       @override     public void onclick(view v) {         // todo auto-generated method stub          else if (v.getid() == mbtn1.getid()) {              if (playing) {                 mp.stop();                 mp.pause();                 playing = false;             } else {                 mediaplayer mp = mediaplayer.create(songs.this, r.raw.chahun);                 mp.start();                 playing = true;                 //  mp.release();             }         } else if (v.getid() == mbtn2.getid()) {              if (playing) {                 mp.stop();                 mp.pause();                 playing = false;             } else {                 mediaplayer mp = mediaplayer.create(songs.this, r.raw.sunn);                 mp.start();                 playing = true;                 //  mp.release();             }          }     } }  

but think giving error while stopping song. i'm getting error following:

 05-21 11:49:23.006: e/androidruntime(15436): fatal exception: main     05-21 11:49:23.006: e/androidruntime(15436): java.lang.nullpointerexception     05-21 11:49:23.006: e/androidruntime(15436):    @ com.qwinix.lucia.songs.onclick(songs.java:99)     05-21 11:49:23.006: e/androidruntime(15436):    @ android.view.view.performclick(view.java:3517)     05-21 11:49:23.006: e/androidruntime(15436):    @ android.view.view$performclick.run(view.java:14155)     05-21 11:49:23.006: e/androidruntime(15436):    @ android.os.handler.handlecallback(handler.java:605)     05-21 11:49:23.006: e/androidruntime(15436):    @ android.os.handler.dispatchmessage(handler.java:92)     05-21 11:49:23.006: e/androidruntime(15436):    @ android.os.looper.loop(looper.java:154)     05-21 11:49:23.006: e/androidruntime(15436):    @ android.app.activitythread.main(activitythread.java:4624)     05-21 11:49:23.006: e/androidruntime(15436):    @ java.lang.reflect.method.invokenative(native method)     05-21 11:49:23.006: e/androidruntime(15436):    @ java.lang.reflect.method.invoke(method.java:511)     05-21 11:49:23.006: e/androidruntime(15436):    @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:809)     05-21 11:49:23.006: e/androidruntime(15436):    @ com.android.internal.os.zygoteinit.main(zygoteinit.java:576)     05-21 11:49:23.006: e/androidruntime(15436):    @ dalvik.system.nativestart.main(native method) 

can please solve this?

you have'nt read documentation that's why facing exception

 if (playing) {       if (mp != null) {          mp.pause();      }      } 

if media playing . first of apply check null condition don't call stop() method make pause calling pause().

reason of exception

before calling stop() method have pause media first.

refer official docs

public void stop () 

stops playback after playback has been stopped or paused.

it saying has been paused means either have pause play calling pause() or gets stopped after completion.

http://developer.android.com/reference/android/media/mediaplayer.html#stop%28%29

sugesstion -- 1 of goods method debugging follow getting exception started finding possible causes exception wether have done things correct or not. if not getting solved use read documents of methods use of exception generated.


Comments

Popular posts from this blog

blackberry 10 - how to add multiple markers on the google map just by url? -

php - guestbook returning database data to flash -

delphi - Dynamic file type icon -