参考文章

Activity里面的核心代码:

    private NfcAdapter mNfcAdapter;private PendingIntent mPendingIntent;@Overridepublic void onNewIntent(Intent intent) {{Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);Log.d("content",readTag(tagFromIntent));}}/*** 启动Activity,界面可见时*/@Overrideprotected void onStart() {super.onStart();mNfcAdapter = NfcAdapter.getDefaultAdapter(this);//一旦截获NFC消息,就会通过PendingIntent调用窗口mPendingIntent = PendingIntent.getActivity(this, 0, new Intent(this, getClass()), 0);}/*** 获得焦点*/@Overridepublic void onResume() {super.onResume();//设置处理优于所有其他NFC的处理if (mNfcAdapter != null)mNfcAdapter.enableForegroundDispatch(this, mPendingIntent, null, null);}/*** 暂停Activity,界面获取焦点*/@Overridepublic void onPause() {super.onPause();//恢复默认状态if (mNfcAdapter != null)mNfcAdapter.disableForegroundDispatch(this);}

其中用到的核心方法readTag()来自我的工具类MyNfcUtil,最后添加权限即可,

<uses-permission android:name="android.permission.NFC" /><uses-feature android:name="android.hardware.nfc" android:required="true" />

使用tag.getTechList()的获取安卓设备的NFC功能能够支持的Tag标签类型:

android.nfc.tech.NfcA
android.nfc.tech.MifareClassic
android.nfc.tech.NdefFormatable

我的手机只支持以上三种类型, 其中MifareClassic也称M1卡,正好我手里有这种卡,使用安卓设备读取获得卡的id为byte[]数组,转换为十六进制,然后转换为十进制,为0094319031,不足十位补0,这就是我最后需要使用的卡片ID。

总结:使用安卓设备NFC读取标签信息过程如下:在Activity里面重写相应的方法,进行开启关闭NFC的相关操作,然后调用我的工具类MyNfcUtil来获取标签信息,最后在配置文件里面添加NFC权限即可。

最后介绍一个NFC读取MifareClassic标签的项目,传送门,据说是个老外搞的,参考下。
源码地址http://download.csdn.net/download/zhangxiangliang2/9995799

安卓手机使用NFC读取MifareClassic等标签信息相关推荐

  1. Android手机 通过NFC读取二代证信息

    Android手机 通过NFC读取二代证信息 APK安装包和源码链接 代码示例 本文推荐一个安卓手机通过NFC读取二代证的SDK,目前市面上已经很多通过云解析来读取二代证的SDK,但是都有一个通病:对 ...

  2. 使用安卓手机的NFC功能进行数据读取操作

    记录一下使用安卓手机的NFC功能来识别各类高频RFID标签或卡片的基本操作思路.因为我的项目中还存在有大量的业务逻辑代码,所以只能整理出当中的一些重要步骤,并贴上代码片段. 1.第一步:在Androi ...

  3. android 重置电池信息,安卓手机用re管理器修改电池信息增加待机时间

    您可能感兴趣的话题: 安卓 核心提示:安卓手机用re管理器修改电池信息增加待机时间,一起看看吧! 智能机的电池时钟是个大问题,与应用市场上下载不完的应用相比,手机续航显得捉襟见肘.小编下面针对刷机后的 ...

  4. android手机上传不了图片,【报Bug】nvue页面使用web-view组件,安卓手机无法调用页面的input标签上传图片...

    详细问题描述 nvue页面,使用web-view原生组件,导致web-view加载的网页页面不能触发input标签进行图片上传,导致这样的原因大致百度了一下是因为安卓5.0及以上使用input typ ...

  5. Android手机 通过NFC读取二代证

    1.初始化 if ((null != mNfcAdapter) && !mNfcAdapter.isEnabled()) { Toast.makeText(this, "请在 ...

  6. 华为手机NFC读取、存储身份证信息,eID (只能用于住店等验证,坐高铁刷了无效)

    步骤 ok 作用 华为NFC功能怎么用?没想到功能这么强大,以前手机白用了! 1.手机变成交通卡 2.手机变成银行卡 平时在搭公交的时候,是不是忘记带零钱了?扫二维码支付很不方便?手机文件在传输的时候 ...

  7. 安卓修改电池容量教程_安卓手机用re管理器修改电池信息增加待机时间

    智能机的电池时钟是个大问题,与上下载不完的应用相比,手机续航显得捉襟见肘.小编下面针对刷机后的感觉电池续航变短的朋友给一个小小的增加待机时间的技巧,当然这个技巧虽然能解决一点点问题,但确实是解决不了根 ...

  8. 【Android工具】安卓手机轻松获取硬件数据和状态信息

    可以获取的硬件信息和软件如上图所示. 硬件中的传感器比较好玩,可以获取手机上所有传感器的数据,还能绘制出变化曲线图 总体来说功能比较多,软件界面也非常干净,就是没有移动网络信号和wifi网络信号强度的 ...

  9. 使用android (android studio)和苹果ios手机读写NFC卡内容(MifareUltralight)方法 亲身完美体验过程

    最近工作需要购买了一些nfc卡进行读写操作,目标是使用手机实现一些业务流程 淘宝购买1-2块钱一张卡,卖家提供的信息:卡的芯片是215 网上找的内容都是一段一段的,我现在把用到的资料都整合起来,以便看 ...

最新文章

  1. 编程之美-寻找最大的k个数
  2. CAS单点登录 - 用户登录与校验
  3. Fiori note automatic delete deletion scenario
  4. C#代码总结02---使用泛型来获取Asp前台页面全部控件,并进行属性修改
  5. linq 分组求和的一般方法
  6. 福泉服务器维修,欢迎访问##福泉小松挖掘机维修服务##实业集团
  7. 关于vmkd加速内核调试
  8. 个人知识管理能解决什么问题?
  9. C# 基础系列--程序集三
  10. 论文笔记_SLAM_An Overview of SLAM_SPIE
  11. Sql基本语句增删改查
  12. Unicode中文编码表
  13. 检索 COM 类工厂中 CLSID 为 {xxx} 的组件失败,原因是出现以下错误: 8000401a 因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。...
  14. 飞到半路被撞?不是小鸟不专心,而是太阳能太晃眼
  15. 【原创】基于SSM框架的小说网站开发与设计
  16. Liber 1. 《活着》:人生如逆旅,我亦是行人
  17. 2014年最新Itcast C++培训3期培训班视频教程
  18. 汉诺塔问题的解决思想
  19. c语言库函数大全文库,c语言常用的库函数_相关文章专题_写写帮文库
  20. 程序员兼职可以从什么平台接私活?

热门文章

  1. 挂件巡检机器人_盘点国内五大智能巡检机器人企业
  2. BRVAH(BaseRecyclerViewAdapterHelper)多样式的使用
  3. 多层感知器的基本特征
  4. 开关功率器件(MOSFET IGBT)损耗仿真方法
  5. web前端基础——第五章
  6. 《浪潮之巅》——当年摩托罗拉系统输在Java慢,Android赢在C++
  7. Ubuntu 14.04 16.04 Linux nvidia 驱动下载与安装
  8. 【单片机基础】stc89c52单片机实现流水灯的三种编程方式
  9. fre740变频器参数_三菱(F700)FR-F740系列变频器常用参数
  10. 蓝桥杯 历届试题 高僧斗法