Android Open Source - NFCSocket H C E Service






From Project

Back to project page NFCSocket.

License

The source code is released under:

Apache License

If you think the Android project NFCSocket listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.chrisplus.nfcsocket;
//from  w  w w  .  j  a v a 2 s  .c  om
import android.os.Bundle;
import android.os.Message;
import android.os.Messenger;
import android.os.RemoteException;

public class HCEService extends CustomHostApduService {

  public static final String TAG = HCEService.class.getSimpleName();
  private Messenger serverMessenger;

  @Override
  public byte[] processCommandApdu(byte[] commandApdu, Bundle extras) {
    if (serverMessenger != null) {
      if (Utils.isSelectAidApdu(commandApdu)) {
        sendMessage(NfcServerSocket.MSG_SERVER_SELECT_MESSAGE,
            commandApdu);
      } else {
        sendMessage(NfcServerSocket.MSG_SERVER_NORMAL_MESSAGE,
            commandApdu);
      }
    }

    return null;
  }

  @Override
  public void onDeactivated(int reason) {

  }

  @Override
  public void onRefreshListener(Messenger sMessenger) {
    serverMessenger = sMessenger;
  }

  private void sendMessage(int what, byte[] data) {
    Message msg = Message.obtain(null, what);
    Bundle bundle = new Bundle();
    bundle.putByteArray(NfcServerSocket.DATA_KEY, data);
    msg.setData(bundle);
    msg.replyTo = mMessenger;
    try {
      serverMessenger.send(msg);
    } catch (RemoteException e) {
      e.printStackTrace();
    }
  }

}




Java Source Code List

com.chrisplus.nfcsocket.CustomHostApduService.java
com.chrisplus.nfcsocket.HCEService.java
com.chrisplus.nfcsocket.NfcClientSocket.java
com.chrisplus.nfcsocket.NfcServerSocket.java
com.chrisplus.nfcsocket.Utils.java
com.chrisplus.nfcsocketexample.MainActivity.java