如何在iPhone中实现NFC(近场通信)?

时间:2011-11-05 11:00:53

标签: iphone ios nfc

我期待在iPhone中实施NFC。任何人都可以为其实施共享一些示例代码吗?直到现在我知道需要一个适配器才能在iPhone上实现这个功能,而这个功能已经在Android手机上成功部署。以下是我发现的使用适配器http://www.icarte.ca/http://www.nexperts.com/typo/index.php?id=51

的内容

3 个答案:

答案 0 :(得分:2)

如果接近要求大约为几厘米,那么NFC就是一个不错的选择。 NFC仍然是手机中采用的一项新技术,因此目前的安装基础有限。

如果接近要求是几英尺的量级,那么最好的选择是蓝牙。蓝牙可用于大量设备。蓝牙具有初始查询/发现过程,该过程是发现附近的附近设备以进行连接的信标过程,这可以实现和检测设备的接近度。

在Android上,这是完全支持的,可以轻松实现。使用iPhone蓝牙公共API仅限于Gamekit,Gamekit使用内部自动机制来检测运行相同应用程序的邻近设备。根据您的使用要求,您可以使用iPhone蓝牙GameKit Apis进行操作。

iPhone还有MFi程序允许Blueototh使用蓝牙开发配件,并且可以更详细地访问iPhone Blueooth功能/ apis,使用它需要部分Apple MFi程序才能访问。请参阅此处查看MFi details

答案 1 :(得分:2)

NFC似乎通过蓝牙为电子支付和需要隐私的联系解决方案提供更好的安全性(例如:媒体交换,如新的三星Galaxy s3功能),原因有两个:

1)802.11蓝牙协议规定了一个平均直径14英尺的范围,这个范围太大而无法站在结账线上,有人能够嗅探或抓住信号,这在nfc上是不太可能的,因为较短的范围(几厘米)和:

2)NFC连接是通过磁耦合实现的,只有当两个设备都非常靠近并且你的mfc应用程序打开/准备就绪时,才能在设备之间创建电子场。蓝牙信号是他们自己的小型广播天线,因此更多的代码管理员可以创建小型网络火灾窗口&防火墙(白名单或黑名单)(配对)基于IPv6甚至更令人头疼,ipv4。

答案 2 :(得分:1)

Apple在2017年WWDC上推出了Core NFC,这是一个新的 iOS 11 框架,可让应用程序检测近场通信标签。

现在检测NFC标签并读取包含NDEF数据的消息。

您的应用可以读取标记,以便为用户提供有关其物理环境及其中的真实对象的更多信息。例如,您的应用可能会向用户提供他们在商店中找到的产品或他们在博物馆中访问的展品的信息。

注意:iPhone 7和iPhone 7 Plus支持读取NFC NDEF标签。

使用Core NFC,您可以读取包含NFC数据交换格式(NDEF)数据的1到5类型的近场通信(NFC)标签。要阅读标记,您的应用会创建NFC NDEF阅读器会话并提供代理。正在运行的阅读器会话轮询NFC标签,并在找到包含NDEF消息的标签时调用该委托,并将消息传递给 代表。委托可以读取消息并处理可能导致会话失效的条件。

要使您的应用能够检测NFC标记,请在Xcode项目中启用近场通信标记读取功能。

文档链接:https://developer.apple.com/documentation/corenfc

演示项目:https://github.com/hansemannn/iOS11-NFC-Example