其他分享
首页 > 其他分享> > 一触即能使两个Android设备通过NFC交换数据吗?

一触即能使两个Android设备通过NFC交换数据吗?

作者:互联网

我想创建一个通过NFC在2个设备之间交换信息的应用程序.

我知道如何使一个手机使用Android Beam向另一个手机发送信息.我不知道两部手机如何仅需轻轻一按就能相互发送数据.

这可能吗?如果是,怎么办?

解决方法:

这取决于您要实现的目标以及所使用的Android版本:

两种设备都具有Android< 4.0 两种设备都可以发送一个NDEF消息,而无需用户交互.消息不能相互依赖(即一台设备不可能发送消息而另一台设备不能对此发送答复).您可以结合使用enableForegroundNdefPush()和enableForegroundDispatch()来实现此目的. 至少一台具有Android< 4.4 理论上,两个设备都可以每次触摸发送一个NDEF消息,但是两个设备上都需要用户交互(即用户需要触摸Beam UI).此外,需要几乎同时触摸两个设备上的Beam UI.否则,另一台设备上的Beam UI将由于收到NDEF消息而中断.因此,这种“解决方案”并不是真正可用的.您可以结合使用setNdefPushMessage *()和enableForegroundDispatch()来实现. 两种设备均采用Android 4.4 从4.4版开始,Android具有两个新功能:
> NFC reader mode
> Host-based Card Emulation(HCE).

当您结合使用这些功能(即,在一台设备上具有HCE主机卡仿真服务并将另一台设备置于读取器模式)时,两个设备都可以使用ISO 7816-4 APDU相互通信(真正的双向通信). .

标签:nfc,android-beam,hce,nfc-p2p,android
来源: https://codeday.me/bug/20191121/2053785.html