Android标记调度程序是同步还是异步处理NDEF记录的?

时间:2016-04-17 17:24:18

标签: android android-intent nfc ndef

我多次阅读Android开发者网站上有关NFC标签调度程序(http://developer.android.com/guide/topics/connectivity/nfc/index.html)的文档,但我无法弄清楚Android标签调度程序在阅读时如何处理多个NDEF记录。

当您有一条记录时,该过程非常清晰,但在具有多条记录的特定情况下,标签调度程序是否会连续映射到专用意图,如果向用户发送了选择操作请求,则每次等待?换句话说它会同步工作还是会并行执行所有相关的意图?

我的观点是要知道我是否可以,例如使用Android M,传递带有Wi-Fi配对信息的第一条记录,然后第二条带有网页,特别是错误类型,如果异步完成,则无法找到互联网连接?

另一个用例是将应用启动器作为第一条记录,第二条记录作为启动应用的参数或一种参数。

当然我想在原生Android中做到这一点,没有第三方应用。

1 个答案:

答案 0 :(得分:0)

答案很简单:Android根本不会将多个NDEF记录分配为多个意图。

如果标签包含多个NDEF记录,Android将仅评估第一个NDEF记录,以形成其将发送的意图的数据部分,以通知应用程序有关此标记的信息。应用程序接收该意图然后决定处理任何其他NDEF记录。

唯一的例外是Android应用程序记录。如果此类记录存在于NDEF消息中的任何位置(无论它是第一个),那么该记录将用于将NFC发现意图传递给AAR中声明的应用程序。不过,在这种情况下,第一条记录将用于形成NFC发现意图的数据部分。