コード例 #1
0
ファイル: MainActivity.java プロジェクト: FuangCao/cavan
  @Override
  public boolean handleMessage(Message msg) {
    if (super.handleMessage(msg)) {
      return true;
    }

    switch (msg.what) {
      case MSG_UPDATE_VIEW:
        if (mBdAddrBytes == null) {
          mEditTextBdAddr.setText(null);
        } else {
          mEditTextBdAddr.setText(CavanString.fromBdAddr(mBdAddrBytes));
        }

        long count = JwaooBdAddr.queryAddrCount(getContentResolver());
        mEditTextAddrRemain.setText(Long.toString(count));
        break;

      case MSG_ADDR_ALLOC_COMPLETE:
        JwaooBdAddr addr = (JwaooBdAddr) msg.obj;
        if (addr == null) {
          CavanAndroid.showToast(this, R.string.text_no_addr);
        } else {
          byte[] bytes = addr.getBytes();
          if (mBleToy.writeBdAddress(bytes)) {
            mBdAddrBytes = bytes;
            mHandler.sendEmptyMessage(MSG_UPDATE_VIEW);

            CavanAndroid.showToast(this, R.string.text_burn_success);
          } else {
            addr.recycle(getContentResolver());
            CavanAndroid.showToast(this, R.string.text_burn_failed);
          }
        }

        mButtonBurn.setEnabled(true);
        break;

      case MSG_ADDR_REQUEST_COMPLETE:
        addr = (JwaooBdAddr) msg.obj;
        if (addr == null) {
          CavanAndroid.showToast(this, R.string.text_request_addr_failed);
        } else {
          CavanAndroid.putPreference(this, KEY_SERVER_IP, mEditTextIp.getText().toString());
          CavanAndroid.putPreference(this, KEY_SERVER_PORT, mEditTextPort.getText().toString());

          mHandler.sendEmptyMessage(MSG_UPDATE_VIEW);

          String text =
              getResources().getString(R.string.text_request_addr_success, addr.getCount());
          CavanAndroid.showToast(this, text);
        }

        mButtonRequest.setEnabled(true);
        break;
    }

    return true;
  }