【发布时间】:2014-02-25 11:36:29
【问题描述】:
我一直在研究Peer-To-Peer 模式的 nfc 示例。我已经以两种不同的方式实现了onResume 方法,用于启动器模式和目标模式,如下所示:
对于发起者模式:
mAdapter.setNdefPushMessage(getTestNdefMessage(), this);
对于目标模式:
mAdapter.enableForgroundDispatch(this, pendingIntent, null, null);
我将一部安卓手机作为发起者,另一部作为目标,并将它们背靠背放置。在这里,我可以听到 NFC 设备检测声音,但在设置为目标模式的 Android 手机上没有收到任何对 onNewIntent 的呼叫。
任何人都可以帮我解决我在概念上或实施上的错误。如果我从settings 启用Android NFC Beam,那么我会在Initiator 设备上收到Touch to Beam 的通知。在这种情况下,我接到了onNewIntent 的电话。
任何方向都会有所帮助。
【问题讨论】:
-
启用 Beam 时会调用
onNewIntent方法,对吗?那么问题出在哪里? -
这就是我的困惑。 p2p模式是否需要开启android beam才能使用nfc?
-
Android Beam 是 Android 唯一的点对点模式界面。所以,是的,如果您想使用 Android 跨点对点模式传输任何内容,则必须使用 Beam。
-
如果是这种情况,如果我有一部带有 NFC 的安卓手机,而另一部是带有 NFC 功能的非安卓手机,我该如何管理 p2p 通信?
-
当我使用非安卓设备测试 nfc 实现时,设备作为 NFC 发起者,设备可以识别我的安卓手机的 nfc,但无法向我的安卓手机发送数据。我没有收到任何回电。
标签: android nfc ndef nfc-p2p android-beam