初始化
if ((null != mNfcAdapter) && !mNfcAdapter.isEnabled()) {
Toast.makeText(this, "请在系统设置中先启用NFC功能", Toast.LENGTH_SHORT).show();
startActivity(new Intent(Settings.ACTION_NFC_SETTINGS));
finish();
return;
}
mNfcPendingIntent = PendingIntent.getActivity(this, 0, new Intent(this,
getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP), 0);
mNFCReaderHelper = new NFCReaderHelper(this, uiHandler, appKey,
appSecret, true);
2.异步读取身份证
private class NFCReadTask extends AsyncTask<Void, Void, String> {
private Intent mIntent = null;
private Context context = null;
private long beginTime;
public NFCReadTask(Intent i, Context contextTemp) {
mIntent = i;
context = contextTemp;
}
@Override
protected String doInBackground(Void... params) {
beginTime = System.currentTimeMillis();
String strCardInfo = mNFCReaderHelper.readCardWithIntent(mIntent);
// 获取uuid
String uuid = mNFCReaderHelper.readCardUUId(mIntent);
return uuid + "," + strCardInfo;
}
@Override
protected void onPostExecute(String strCardInfo) {
super.onPostExecute(strCardInfo);
String uuid = "";
try {
uuid = strCardInfo.split(",")[0];
strCardInfo = strCardInfo.split(",")[1];
} catch (Exception ex) {
}
uuIdText.setText(uuid);
tvshijiancontent.setText((System.currentTimeMillis() - beginTime)
+ "毫秒");
if ((null != strCardInfo) && (strCardInfo.length() > 1600)) {
UserInfo userInfo = mNFCReaderHelper
.parsePersonInfoNew(strCardInfo);
tvname.setText(userInfo.name);
tvsex.setText(userInfo.sex);
tvnation.setText(userInfo.nation);
tvbirthday.setText(userInfo.brithday);
tvcode.setText(userInfo.id);
tvaddress.setText(userInfo.address);
tvdate.setText(userInfo.exper + "-" + userInfo.exper2);
tvdepar.setText(userInfo.issue);
// TODO:
if (isLocalParsingImage) {
// 本地动态库解析
// Bitmap bm = mNFCReaderHelper.decodeImagexxxXT(strCardInfo);
Bitmap bm = mNFCReaderHelper.decodeImagexxxNewBit(strCardInfo);
iv_zhaopian.setImageBitmap(bm);
} else {
// 网络解析头像
ShowHeadThread showThread = new ShowHeadThread();
showThread.img = mNFCReaderHelper
.decodeImageByte(strCardInfo);
showThread.start();
}
}
}
}
3、SDK源码地址: http://auth.teiwin.cn:8585/nfcreader
分享到:
相关推荐
深圳市德科物联技术有限公司的手机NFC读取身份证明文信息Demo。更多信息请访问德科官网。 如何集成到项目中 Step 1. Add the JitPack repository to your build file 打开根build.gradle文件,将maven { url '...
在安卓平台上用NFC读取身份证信息的完整代码,直接可以下载下来用android studio编译成功,并且安装上就可以测试
NFC完整的读取功能,可以读取身份证等NFC、公交卡、银行卡等卡片
利用安卓手机自带的NFC读取身份证信息的源码,编译工具是android studio,打开应该就可以使用,解码采用云解码方式
利用安卓手机自带的NFC读取身份证信息的源码,编译工具是android studio,打开应该就可以使用,解码采用云解码方式。...
android-NFC开发相关代码,用于读取身份证信息,eclipse
软件开发设计:PHP、QT、...云计算与大数据:数据集、包括云计算平台、大数据分析、人工智能、机器学习等,云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。
实现android手机的读写操作,必须是支持NDF的android手机才可以测试出来,简单的源码。
android_IDCardDemo-master,读取二代证的实例,未验证。
基于mui框架的NFC功能开发,可读可写,使用简单 用时只需传入用于接收读取到的NFC数据的方法即可,“写”操作则是提供了方法,需自己稍微加工下
本SDK支持二代身份证、护照及EID的读取。 护照及EID功能开通需要单独向公司申请,联系方式请见文档封面。 NFC读卡用于支持NFC的安卓设备上。 OTG读卡用于支持USB的安卓设备上(USB口需要配套我公司专门证件读卡器)...
深圳市德科物联技术有限公司的USB身份证阅读器Demo, 支持DK26ME、DK26ME-ANT、DK200ZK等模块。更多产品信息请访问德科官网。 如何集成到项目中 Step 1. Add the JitPack repository to your build file 打开根...
最近研究C#相关的ORC技术,图像识别一般C和C++这种底层语言做的比较多,C#主要是依托一些封装好的组件进行调用,这里介绍三种身份证识别的方法。 一:调用大公司API接口,百度、云脉,文通科技都有相关的API介绍。 ...
基于Android minSdkVersion 23 读取IC卡卡号,目前测试 公交卡、银行卡、身份证都能读取卡号,运行时,AndroidStudio 导入项目,连接USB调试模式,之后将公交卡放入手机识别区,查看AndroidStudio 日志,过滤填入 ...
在Android和iOS上提供NFC功能的另一个插件。 该插件的功能包括: 读取符合以下条件的标签/卡的元数据并读写NDEF记录: ISO 14443 A型和B型(NFC-A / NFC-B / MIFARE Classic / MIFARE Plus / MIFARE Ultralight ...
深圳市德科物联技术有限公司的串口身份证阅读器Demo, 支持DK26ME、DK26ME-ANT、DK25GM、DK25-ST等模块。更多产品信息请访问德科官网。 如何集成到项目中 Step 1. Add the JitPack repository to your build file ...