1.在服务内部定义一个方法
public void banzheng(int money)
{
if (money < 1000)
{
Toast.makeText(getApplicationContext(), "太少了", 1).show();
} else if (money > 1000)
{
Toast.makeText(getApplicationContext(), "太多了", 1).show();
}
}
2.在服务的内容定义一个中间人对象
public class MyBinder extends Binder
{
public void callBanZheng(int money)
{
banzheng(money);
}
}
3.把定义的中间人对象放在onBind内并返回
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return new MyBinder();
}
4.在acivity的oncreate方法内调用bindService
Intent intent = new Intent(this, BanZhengService.class);
conn = new MyConnection();
bindService(intent, conn, BIND_AUTO_CREATE);
5.拿到中间价对象,就可以调到服务的电话
public class MyConnection implements ServiceConnection
{
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
// TODO Auto-generated method stub
binder = (MyBinder) service;
}
@Override
public void onServiceDisconnected(ComponentName name) {
// TODO Auto-generated method stub
}
}
6.在 onDestroy方法内解绑
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
unbindService(conn);
super.onDestroy();
}