5

我需要NFC通过安卓手机将一个简单的字符串传输到 PC。为了在 PC 中启用 NFC 功能,我插入了一个以通过我在 PC 中的程序ACR122U从 android 手机读取传输的数据。C#

我在网上尝试了许多android实现,例如

对于 C#,

但这些都不能正常工作。就像在简单的文本中没有得到传输一样。我尝试使用ACR122USDK 的示例代码从上述 android 实现中接收数据,但也失败了。

如果你们中的任何一位专家在通过ACR122u将简单文本从支持 android NFC 的设备传输C# 程序时提供任何参考/示例/教程/示例代码,我将不胜感激。

非常感谢:)我已经坚持了几个月,终于向各位专家寻求帮助。

PS 我尽力参考 ACR122U 的文档,但它让我无处可去

4

1 回答 1

1

您正在尝试将两个完全不相关的通信概念结合起来。

您正在使用的 PC 端应用程序模拟 FeliCa 智能卡(顶部带有 NDEF 抽象层)。因此,在 Android 端,您需要以读/写模式访问该模拟智能卡:

  1. 注册您的 Android 应用以接收 NFC 意图(通过清单或通过前台调度系统)。对于您的卡,我建议您注册 NDEF_DISCOVERED 意图或使用技术NfcF+ Ndef/注册 TECH_DISCOVERED 意图NdfFormatable

  2. 一旦收到这样的意图,从收到的打开Ndef/NdefFormatable连接中获取标签句柄到模拟标签并读/写 NDEF 消息。

但是,您目前在 Android 端尝试做的是使用点对点模式(更具体地说是 Android Beam)。Beam 以点对点模式在两个 NFC 设备之间交换消息,而不是在 NFC 和(模拟的)NFC 标签之间交换消息。在这种情况下,您需要将 ACR122U 置于点对点模式(ISMB-SNEP 项目包含用于此的 Java 代码)。

于 2014-05-26T09:31:40.880 回答