private Messenger mClient = null;
private final Messenger mMessenger = new Messenger(new Handler(new Handler.Callback() {
@Override
public boolean handleMessage(Message msg) {
Log.w("test","ControlService - message what : "+msg.what +" , msg.obj "+ msg.obj);
switch (msg.what) {
case Features.REQUEST_COMMAND: //messenger 초기
mBluetoothConnectSession.sendData(msg.getData().getString("command")); // activity로부터 가져온
break;
case Features.SET_HANDLER: //messenger 초기
mClient = msg.replyTo; // activity로부터 가져온
break;
case Features.RESET_HANDELR: //messenger
mClient = null;
break;
}
return false;
}
}));
private void sendMsgToActivity(int sendValue, String text) {
try {
Bundle bundle = new Bundle();
bundle.putString("text",text);
Message msg = Message.obtain(null, sendValue);
msg.setData(bundle);
mClient.send(msg); // msg 보내기
} catch (RemoteException e) {
}
}
이런핸들러가있을때 mClient.send(msg); 여기부분 왜 mClient에다가 send를 해야 동작을할까요
mMessenger.send로하면 정상동작을안하는지..