射频识别(RFID)技术

近场通信(NFC)技术

作者:陈广 日期:2019-11-13


写完将手机变为读卡器这篇文章后,接下来要研究如何用手机模拟卡,但遇到了问题。在网上几乎没有可参考的文章。更要命的是,模拟卡这功能貌似需要手机Root权限,这就很为难了,做实验是不可能的了。还是不死心,先看看英文资料,说不定能找出一条路来。Android 文档中有专门针对 NFC 的文章,这个是可以参考下的,所以接下来先把这几篇文章翻译了再说。本文先翻译概览,原文地址如下,需要查看 API 的时候还得去看原文,我就不把 API 链接一个个贴上去了:

https://developer.android.google.cn/guide/topics/connectivity/nfc

近场通信(Near Field Communication,NFC))是一系列短距离无线技术,通常需要 4cm 或更小的距离来启动连接。NFC 允许您在 NFC 标签和 Android 设备之间或在两个 Android 设备之间共享少量有效数据。

标签可以非常复杂。简单的标签只提供读和写语义,有时通过使用一次性可编程的区域让标签只读。更复杂的标签提供数学操作,并使用加密硬件来验证对扇区的访问。最复杂的标签包含操作环境,允许与在标签上执行的代码进行复杂交互。存储于标签的数据也可以被写为各种格式,但多数 Android API 遵循称为 NDEF(NFC 数据交换格式)的 NFC 论坛标签。

具有 NFC 的 Android 设备同时支持三种主要操作模式:

  1. 读/写模式,允许 NFC 设备读或写被动 NFC 标签或贴纸。
  2. P2P模式,允许 NFC 设备间交换数据;此操作模式是由 Android Beam 使用的。
  3. 卡模拟模式,允许 NFC 设备作为一张 NFC 卡。模拟 NFC 卡可被另外的 NFC 读写器访问,比如 NFC 销售终端。

NFC 基础

这篇文章介绍了 Android 如何处理发现的 NFC 标签以及它是如何向应用程序通知相关的数据的。它还讨论如何在应用程序中使用 NDEF 数据,并概述了支持基本 NFC 功能的 Android API。

高级 NFC

这篇文章介绍了 Android 支持的可用于各种标签技术的 API。当您不使用 NDEF 数据时,或者当您正在使用 Android 无法完全理解的 NDEF 数据时,当您必须使用自己的协议栈手动读取或写入原始字节中的标记时,Android 提供支持来检测某些标签技术,并使用自己的协议栈与标签进行通信。

基于主机的卡模拟

这篇文章描述了 Android 设备如何在不使用安全元件的情况下作为 NFC 卡执行操作,允许任何 Android 应用程序模拟一张卡并直接与 NFC 阅读器交互。

;

© 2018 - IOT小分队文章发布系统 v0.3