Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 双工NFC消息交换支持_Android_Nfc_Ndef_Nfc P2p_Android Beam - Fatal编程技术网

Android 双工NFC消息交换支持

Android 双工NFC消息交换支持,android,nfc,ndef,nfc-p2p,android-beam,Android,Nfc,Ndef,Nfc P2p,Android Beam,我不熟悉NFC协议。有人能告诉我是否可以在一次会话中以两种方式交换NDEF/SNEP消息吗?我的意思是从NFC协议的角度来看 我知道使用Beam功能,您可以发送单向消息[例如,电话->电脑],但要使用Beam以其他方式发送[例如,电脑->电话],您需要再次点击电话[即触发另一个会话]。我想与一个会话交换消息。在Android下与SNEP交换消息目前不可能。Android无法让应用程序发送或接收第二条消息。从SNEP和LLCP(SNEP的基础)协议的角度来看,这是可能的。(这就是说:Android

我不熟悉NFC协议。有人能告诉我是否可以在一次会话中以两种方式交换NDEF/SNEP消息吗?我的意思是从NFC协议的角度来看


我知道使用Beam功能,您可以发送单向消息[例如,电话->电脑],但要使用Beam以其他方式发送[例如,电脑->电话],您需要再次点击电话[即触发另一个会话]。我想与一个会话交换消息。

在Android下与SNEP交换消息目前不可能。Android无法让应用程序发送或接收第二条消息。从SNEP和LLCP(SNEP的基础)协议的角度来看,这是可能的。(这就是说:Android真的应该为每个人开放LLCP!)

如果您想要来回通信,并且您可以控制PC端,那么您唯一的选择就是在PC端从SNEP切换到卡仿真


如果您的硬件允许您在PC上运行ISO14443-a或ISO14443-B卡模拟,您可以只模拟包含NDEF消息的标记,然后使用IsoDep标记接口进行任何双向数据交换。

作为在PC端使用软件卡模拟的替代方法,您也可以使用类似的库。该库在Android上通过LLCP/SNEP实现某种程度上的(*)双向数据交换


(*)在某种程度上:它通过在每次信息交换时关闭和打开PC端的读卡器来自动点击,因此用户无需重新点击。

这解释了很多。感谢您带来了Android规范和实现之间的差异。