Android设备:已解锁的三星Galaxy Nexus
USB NFC读卡器:ACR122,ACR122L
我正在尝试为即将开展的项目创建一个概念验证。不幸的是,我无法详细介绍该项目,但我想我可以解释一下我正在努力做些什么以获得一些帮助。
我需要使用连接到Linux(CentOS 6)工作站的NFC阅读器(任一个)。当我'扫描'手机时,我需要它给我发消息,然后将该消息放入STDOUT。
基本上,如果我打开nano并扫描手机,它应该将该消息放入nano。
这是否意味着我必须使用ForegroundNdefPush创建一个Android应用来推送消息?如果是这样,有没有办法从手机中检索某种独特的价值,例如IMEI或序列号?
它不一定是自定义消息,但我需要为我扫描的每个设备提供唯一的ID。
理想的答案除了使用ACR122 SDK进行开发外,不需要任何其他内容。如果需要一个特殊的手机应用程序,它可能会在我真正证明任何概念之前杀死我的概念验证。
答案 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阅读器!