首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

service简括2

2012-11-30 
service简括二? bindService()?public class BindActivity extends Activity {private Button btnStartBin

service简括二

? bindService()

?

public class BindActivity extends Activity {private Button btnStartBindService;private Button btnStopBindService;  private boolean isConnected=false; //service是否创建@Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.bind);        btnStartBindService=(Button)findViewById(R.id.btnStartBindService);        btnStopBindService=(Button)findViewById(R.id.btnStopBindService);        btnStartBindService.setOnClickListener(listener);        btnStopBindService.setOnClickListener(listener);       }private OnClickListener listener=new OnClickListener() {@Overridepublic void onClick(View v) {switch(v.getId()){  case R.id.btnStartBindService: bind();  break;  case R.id.btnStopBindService:   unBind();  break;  default:    break; }}};private void unBind() {if(isConnected){unbindService(connection);}}private void bind() {Intent intent=new Intent(BindActivity.this,BinderServices.class);bindService(intent, connection, Context.BIND_AUTO_CREATE);}private ServiceConnection connection=new ServiceConnection() {@Overridepublic void onServiceDisconnected(ComponentName name) {// TODO Auto-generated method stubisConnected=false;}@Overridepublic void onServiceConnected(ComponentName name, IBinder binder) {MyBinder myBinder=(MyBinder)binder;//返回MyBinder类,要强制转换
BinderServices services=myBinder.getServices();services.myMethod();isConnected=true;}};}

?

?

public class BinderServices extends Service {private static final String TAG = "BinderServices";private MyBinder binder=new MyBinder();public class MyBinder extends Binder{public BinderServices getServices(){return BinderServices.this;}}@Overridepublic IBinder onBind(Intent intent) {// TODO Auto-generated method stubreturn binder;}public void myMethod() {Log.i(TAG,"MyMethod()");}}

热点排行