Android NFC技术详解:原理、应用和开发指南

5星 · 超过95%的资源 需积分: 9 64 下载量 50 浏览量 更新于2024-09-15 收藏 365KB PDF 举报
NFC 教程 Android NFC(Near Field Communication,近距离通信)是一种短距离无线通信技术,通常其有效通讯距离为4厘米以内。NFC工作频率为13.65兆赫兹,通信速率为106kbit/秒到848kbit/秒。NFC通信总是由一个发起者(initiator)和一个接受者(target)组成。 **NFC工作原理** NFC的工作原理类似于收音机。initiator主动发送电磁场(RF),可以为被动式接受者(passive target)提供电源。因此,target可以有非常简单的形式,比如标签、卡、sticker的形式。 **NFC通信方式** NFC支持点到点的通信(peertopeer),此时参与通信的双方都有电源支持。与其他无线通信方式如Bluetooth相比,NFC支持的通信带宽和距离要小的多,但是它成本低,如价格标签可能只有几分钱,也不需要配对、搜寻设备等,通信双方可以在靠近的瞬间完成交互。 **Android NFC 应用** 在Android NFC应用中,Android手机通常是作为通信中的发起者,也就是作为NFC的读写器。Android手机也可以模拟作为NFC通信的接受者,且从Android 2.3.3起也支持P2P通信。 **Android 对NFC的支持** Android对NFC的支持主要在android.nfc和android.nfc.tech两个包中。 **android.nfc包** android.nfc包中主要类包括: * NfcManager:可以用来管理Android设备中指出的所有NFCAdapter,但由于大部分Android设备只支持一个NFCAdapter,可以直接使用getDefaultAdapter来获取系统支持的Adapter。 * NfcAdapter:为一个NFCAdapter对象,可以用来定义一个Intent使系统在检测到NFCTag时通知你定义的Activity,并提供用来注册foreground tag消息发送的方法等。 * NdefMessage和NdefRecord:NDEF为NFCforum定义的数据格式。 * Tag:代表一个被动式Tag对象,可以代表一个标签、卡片、钥匙扣等。当Android设备检测到一个Tag时,会创建一个Tag对象,将其放在Intent对象,然后发送到相应的Activity。 **android.nfc.tech包** android.nfc.tech中则定义了可以对Tag进行的读写操作的类,这些类按照其使用的技术类型可以分成不同的类,如NfcA、NfcB、NfcF等。 **NFC在Android中的应用** NFC技术在Android中的应用非常广泛,可以用于各种场景,如支付、分享、身份验证等。开发者可以使用Android提供的NFC API来开发相关的应用程序。