java - Android: Service won't bind -


im trying create bound service. test created service plays music:

public class musicservice extends service {     private final ibinder mybinder = new localbinder();     mediaplayer player;      @override     public ibinder onbind(intent arg0) {         return mybinder;     }     @override     public void oncreate() {         super.oncreate();         player = mediaplayer.create(this,r.raw.teardrop);         player.setlooping(true); // set looping         player.setvolume(100,100);         player.start();     }     @override     public void ondestroy() {         player.stop();         player.release();     }      public class localbinder extends binder {         public musicservice getservice() {             return musicservice.this;         }     }     } 

and when bind activity nothing happens:

public class mainactivity extends tabswipeactivity {     boolean isbound = false;     musicservice myservice;      @override     public void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);     //some code                 intent intent = new intent(this, musicservice.class);         bindservice(intent, myconnection, context.bind_auto_create);         if(isbound){             toast.maketext(this, "success", toast.length_short).show();         }else{             toast.maketext(this, "bind failed", toast.length_short).show();         }     }     private serviceconnection myconnection = new serviceconnection() {          public void onserviceconnected(componentname classname,ibinder service) {             localbinder binder = (localbinder) service;             myservice = binder.getservice();             isbound = true;         }                public void onservicedisconnected(componentname arg0) {             isbound = false;         }     };     } 

service registred in manifest:

<service android:name=".musicservice" /> 

bind failed appears , nothing happens

edit: bindservice() returns false

edit2: when add complete name in manifest eg. com.mypackage.mypackage2.musicservice bind service() returned true. onserviceconnected() never called.

next question is: when create service implements locationlistener, should use send message activity everytime when onlocationchanged()?

i know solution. extends tabactivity made actionbarsherlock instead of activity. known issue:

 getapplicationcontext().bindservice(); 

fix that.


Comments