Android NFC手机可以充当NFC标签吗?


101

根据我到目前为止的了解,NFC电话将充当NFC读取器,该读取器将从NFC标签读取数据。现在我的问题是,我们可以切换一下吗?我们能否使Android NFC手机像NFC读取器将从其获取数据的标签那样工作?

谢谢你的协助。

Answers:


32

目前,我会回答“否”或“困难”,但是随着android NFC API的发展,这种情况可能会随着时间而改变。

NFC交互共有三种模式:

  1. 读写器:手机读取标签并写入标签。它不是在模拟卡,而是在模拟NFC读/写器设备。因此,您无法在此模式下模拟标签。

  2. 对等:电话可以读取和传回ndef消息。如果标签读取器支持对等模式,则电话可能会充当标签。但是,我不确定android是否在LLCP协议(NFC逻辑链接协议)之上使用自己的协议,这将阻止大多数读者将手机视为nfc标签。

  3. 卡模拟模式:电话使用安全元素来模拟智能卡或其他非接触式设备。我不确定这是否已经启动,但能否提供希望。但是,使用安全元素可能需要硬件供应商或其他人员来验证您的应用程序/为其授予访问安全元素的权限。它不像创建常规的NFC android应用那样简单。

此处有更多详细信息:http : //www.mail-archive.com/android-developers@googlegroups.com/msg152222.html

真正的问题是:您为什么要模仿一个简单的旧nfc标签?我有没有想到的应用程序吗?通常,您需要模拟需要安全元素的交通卡,访问密钥或信用卡之类的东西(我认为,但不确定)。


好。Google刚刚宣布了google.com/wallet。在这种情况下,电话不会充当标签吗?
约书亚·帕托吉

1
正如@ erich-douglass上面指出的:不一定。如果阅读器终端是点对点的,则不需要充当标签。
denbec 2011年

如上,您可以使用NDEF push和android 2.3+中的对等支持从手机写入阅读器,但是您需要确保阅读器代码是对等的。(必须是具有NFC芯片的手机,例如Galaxy Nexus,
NexusS

问题在于,当前大多数NFC读卡器都采用无源标签。支持主动LLCP交换要复杂得多,并且当然仍然支持被动卡读取。有可能,但是我还没有听说使用LLCP实现付款方式...
AerandiR 2012年

11
这已经过时了。Android 4.4具有基于主机的卡模拟功能,该功能可实现以下功能:developer.android.com/guide/topics/connectivity/nfc/hce.html
Trevor Johns

17

我们可以将Android NFC用作NFC读取器将从中获取数据的标签吗?

Nexus S支持对等模式,顾名思义,该模式使一部手机充当标签,另一部手机可以读取该标签。今年,关于NFC的Google I / O会议非常好。如果您对NFC完全感兴趣,我建议您观看。


谢谢。这对我来说很清楚。但是NFC读取器可以从手机中读取吗?
2011年

@jpartogi我不太确定,但是我认为读者必须明确支持点对点模式才能工作。
Erich Douglass

点对点模式是两种电话或设备都充当阅读器的情况。信息不是来回读取,而是来回推送(写入)。
本·沃德



3

在这里阅读:http : //groups.google.com/group/android-developers/browse_thread/thread/d5fc35a9f16aa467/dec4843abd73d9e9%3Flnk%3Dgst%26q%3Dsecure%2Belement%2Bdiff%2527s%23dec4843abd73d9e9?pli=1

我尚未验证自己,但看来人们设法将隐藏的代码再次包含到Android中。他们似乎能够模仿Mifare Classic卡(iso-14443)。我很快将自己测试一下,它看起来非常有趣。

如果您想为商业/免费应用程序做到这一点,将会遇到很多麻烦,您的用户将不希望更改其内核以支持您的应用程序。

更新:有一个简单的技巧可以使您的手机模拟票证:
您可以获取NFC贴纸并将其放在手机中或手机上。这样,您可以随时读取和写入它,其他设备也可以读取和写入它。
这只是我的一个想法,从来没有见过在任何地方使用它;)


我们已经尝试过使用iCarte在iPhone上进行NFC标签仿真的技巧。它可能会起作用...但是我们决定取消它,因为这确实无法使用...
STeN 2012年

2

是的,看看NFCManager中的NDEF Push-在Android 4上,您现在甚至可以创建NDEFMessage来在进行交互时将其推送到活动设备。


1
这是p2p模式吗?不是NFC论坛授权的标签仿真。
12

2

在有关NFC的Google io会话中,“质量检查”部分。有一个问题:

卡模拟?不支持卡仿真的API,进行卡仿真时没有一致的用户体验,也没有令人信服的故事


再次说明-卡模拟“不允许”的原因是通常需要使用安全元素,但是对于NFC标签没有安全性(实际上它们不能提供任何安全性)。这消除了对安全元素的需求,并且有可能通过应用程序代码对其进行仿真。
12

1

如果您是想让一台有源NFC设备假装为被动设备(例如标签),则不知道它的工作情况如何,但是android应用NFCClassic声称要记录标签内容,然后允许该标签被激活并看上去像是复制的标签给NFC阅读器。创建一个记录的标签库。



0

对于NFC技术,这很容易。对于Google,它将不支持作为Google钱包。


0

不,不是此刻。Google在Google IO 2011上指出,不支持卡仿真,并且将在一段时间内不支持卡仿真。主要(且易于理解)问题:哪个应用程序应该可以通过电话正确模拟智能卡?


正确的做法是让IC有可能根据请求接受每个信息的信息...
Obmerk Kronen

0

您绝对可以使用对等支持中的NDEFPush功能使Android手机写入标签读取器-但您需要在标签读取器端编写代码才能同时使用对等(llcp) 。


0

是的,您可以选择对等模式

对等模式


双向P2P连接以在设备之间交换数据

–接近触发的互动

–Nexus S:设备必须背对背放置

应用实例

–交换电子名片

–票务交接及P2P付款

–网​​页共享,Youtube视频共享

–应用共享


0

有可能使Android设备充当NFC标签。这种行为称为卡仿真

  • 卡仿真可以基于主机(HCE)或基于安全元素(CE)。
  • 在HCE中,运行在Android主处理器上的应用程序会响应阅读器。因此,电话需要打开。
  • 在CE中,驻留在Secure元素中的applet对阅读器做出响应。在这里,足以使NFC控制器通电,而其余设备仍处于挂起状态。
  • 这些方法之一或两者可以同时处于活动状态。
    路由表指示NFC控制器将阅读器的命令路由到何处。

可以提供一些参考或用例吗?
AbhinayMe
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.