基本信息
源码名称:Adnroid NFC读取银行卡信息(下图为读取招商银行卡的信息)
源码大小:2.67M
文件格式:.rar
开发语言:Java
更新时间:2018-05-10
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
封装NFC读卡器模式接口
package com.zchr.nfcdemo;
import com.zchr.nfc.ISO7816;
import com.zchr.nfc.NfcBaseActivity;
import com.zchr.nfc.NfcReader;
import com.zchr.util.MyUtil;
import com.zchr.util.SysException;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.TextView;
public class MainActivity extends NfcBaseActivity {
public TextView m_textViewShow;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
m_textViewShow = (TextView) findViewById(R.id.test_show);
//初始化NFC接口
InitNfcInterface(this);
}
//IC卡处理
public void IccProc() {
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
Message message;
ISO7816 iso7816ApduRsp = new ISO7816();
try {
if (NfcReader.ConnectCard() != NfcReader.CARD_READER_SUCCESS) {
throw new SysException("连接卡失败");
}
if (NfcReader.SendApdu("00A404000E315041592E5359532E4444463031", iso7816ApduRsp) != NfcReader.CARD_READER_SUCCESS) {
throw new SysException("发送选择PSE命令失败");
}
message = null;
message = new Message();
message.what = 0;
message.obj = MyUtil.ByteArrayToHexString(iso7816ApduRsp.getByteRspData()) "[" MyUtil.ByteArrayToHexString(iso7816ApduRsp.getSW()) "]";
mHandler.sendMessage(message);
} catch (SysException e) {
message = null;
message = new Message();
message.obj = e.toString();
message.what = 1;
mHandler.sendMessage(message);
} catch (Exception e) {
e.printStackTrace();
message = null;
message = new Message();
message.obj = "发生异常";
message.what = 1;
mHandler.sendMessage(message);
} finally {
}
}
});
thread.start();
}
public Handler mHandler = new Handler() {
public void handleMessage(Message msg) {
switch (msg.what) {
case 0:
m_textViewShow.setText((String) msg.obj);
m_textViewShow.invalidate();
break;
case 1:
m_textViewShow.setText((String) msg.obj);
m_textViewShow.invalidate();
break;
default:
break;
}
super.handleMessage(msg);
}
};
//NFC读写处理
public void NfcReadWriteProc() {
//IC卡处理
IccProc();
}
}