android之绑定服务调用服务的方法

public class MainActivity extends Activity { private music.MyBinder mm;//在activity里面得到服务ibinder对象的引用@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);} public void open(View view){Intent intent=new Intent(this,music.class);startService(intent);} public void stop(View view){Intent intent =new Intent(this,music.class);stopService(intent);} public void play(View view){Intent intent =new Intent(this,music.class);bindService(intent,new myconn(), BIND_AUTO_CREATE);} private class myconn implements ServiceConnection{@Overridepublic void onServiceConnected(ComponentName name, IBinder service) {System.out.println("服务被绑定");//服务返回的ibinder对象会被传递给myconn的回调方法mm= (MyBinder) service;}@Overridepublic void onServiceDisconnected(ComponentName name) {}} public void music(View view){//利用ibinder对象间接的调用了服务里面的方法mm.callchange("出发");}public class music extends Service {@Overridepublic IBinder onBind(Intent intent) {System.out.println("服务绑定成功");//服务成功绑定的时候惠调用onbind方法返回一个ibinder对象return new MyBinder();} public class MyBinder extends Binder{public void callchange(String name){//利用中间人代理 调用歌曲方法classmusc(name);}}@Overridepublic void onCreate() {System.out.println("服务被开启");super.onCreate();}public void classmusc(String Singname){Toast.makeText(getApplicationContext(), "歌曲是"+Singname, 1).show();}@Overridepublic void onDestroy() {System.out.println("服务销毁");super.onDestroy();}}

,自己要先看得起自己,别人才会看得起你

android之绑定服务调用服务的方法

相关文章:

你感兴趣的文章:

标签云: