|
public class MainActivity extends Activity {
private Button btn = null;
private IBoundService mIBoundService;
private boolean mServiceConnected = false;
private ServiceConnection conn = new ServiceConnection() {
@Override
public void onServiceDisconnected(ComponentName name) {
mServiceConnected = false;
}
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
mIBoundService = IBoundService.Stub.asInterface(service);
mServiceConnected = true;
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.button1);
Intent intent = new Intent(this, BoundService.class);
bindService(intent, conn, Context.BIND_AUTO_CREATE);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (mServiceConnected) {
try {
int result = mIBoundService.getResult(2, 4);
Toast.makeText(MainActivity.this, "result=" + result,
Toast.LENGTH_SHORT).show();
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
});
}
@Override
protected void onDestroy() {
super.onDestroy();
if (mServiceConnected) {
unbindService(conn);
mServiceConnected = false;
}
}
} |
|
|