如何使用NFC将消息从Android推送到USB读卡器?

时间:2012-01-05 18:18:24

标签: android nfc

Android设备:已解锁的三星Galaxy Nexus

USB NFC读卡器:ACR122,ACR122L


我正在尝试为即将开展的项目创建一个概念验证。不幸的是,我无法详细介绍该项目,但我想我可以解释一下我正在努力做些什么以获得一些帮助。

我需要使用连接到Linux(CentOS 6)工作站的NFC阅读器(任一个)。当我'扫描'手机时,我需要它给我发消息,然后将该消息放入STDOUT。

基本上,如果我打开nano并扫描手机,它应该将该消息放入nano。

这是否意味着我必须使用ForegroundNdefPush创建一个Android应用来推送消息?如果是这样,有没有办法从手机中检索某种独特的价值,例如IMEI或序列号?

它不一定是自定义消息,但我需要为我扫描的每个设备提供唯一的ID。

理想的答案除了使用ACR122 SDK进行开发外,不需要任何其他内容。如果需要一个特殊的手机应用程序,它可能会在我真正证明任何概念之前杀死我的概念验证。

2 个答案:

答案 0 :(得分:1)

  

这是否意味着我必须使用ForegroundNdefPush创建一个Android应用来推送消息?

如果通过“扫描手机”,您希望Android设备的行为就像是NFC标签一样,那么您肯定必须做某事,我有理由相信某些事情将涉及ForegroundNdefPush。在NFC无线电通电的情况下,您的Android手机不会随时待命,假装是标签。部分原因是电池续航时间。

  

如果是这样,有没有办法从手机中检索某种独特的价值,例如IMEI或序列号?

Here is Google's official opinion on the matter。由于您的目标是NFC设备,ANDROID_ID在root用户手机和(可能)修改过的ROM之外会相当可靠。

答案 1 :(得分:0)

使用ForegroundNdefPush正在使用点对点模式。要获得一个唯一的号码,您很可能必须编写自己的应用程序,并创建自己的ID号码。

当手机的行为类似于标签时,您无法访问标签上的信息。根据我在Nexus S上看到的,当您将手机放到阅读器时给出的标签ID是随机 ID,每次都不同。

如果没有专门的手机应用,我认为你无法过关。除非你能够将NFC贴纸贴在手机上,但我不知道这会如何干扰手机NFC阅读器!