我发现Android设备支持三种NFC模式:读取器/写入器, P2P 和卡模拟。
我的应用可以检查当前启用的模式吗?
答案 0 :(得分:1)
不,您的应用无法检查当前启用的模式。关键在于,默认情况下,Android设备会定期检查所有三种模式(实际上它比这更复杂一点:这三种模式本身被分成几个部分,每个部分轮询某种技术)。因此,当屏幕打开时,您可以期望Android设备在监听其他读取器和轮询不同类型的标签技术和点对点模式设备之间循环切换。无论您是注册通过点对点模式发送消息,是否为HCE注册了应用,或者您的应用注册了NFC发现意图,都是如此。即使您在设置中禁用Android Beam,设备仍将轮询以进行点对点模式。
仅当您使用reader mode API(Android 4.4及更高版本)明确禁用卡片仿真和P2P时,您的应用才能控制只有读取器/写入器模式处于活动状态(并且它可以甚至控制应该轮询哪些标签技术。)
因此,您的应用可以知道它启用了哪些模式,并且可以做一些猜测,例如。