有没有办法在没有NFC手机的情况下开发NFC标签读/写应用程序?有没有办法创建一个支持NFC的AVD?我搜索过并发现Open NFC存在,但我现在找不到很多关于它的信息。它已经过时了吗?有没有其他方法可以实现它?
谷歌从未在AVD中实现对NFC的支持。因此Android设备模拟器中没有对NFC的官方支持。
早在NFC在Android上,Inside Secure开发并发布了NFC堆栈“Open NFC”。尽管它的名字,Open NFC并不像它的名字那样开放,主要针对Inside的NFC前端系列。 NFC堆栈的一个很好的副作用是它的仿真器集成,类似于诺基亚的NFC虚拟设备支持其S40系列手机的能力。开放NFC项目的公共文件仍可在SourceForge上找到:here。然而,该项目早已被放弃(可能是由于selling their NFC technology to Intel)。
Open NFC的最新版本针对Android 4.2.1(适用于Android 4.2.2),因此如果您可以接受该平台,则可以尝试设置该AVD环境。这里有一个循序渐进的指南:Open NFC Simulator Usage(在这里也可以看到缺少的组件:Failed to load open-nfc addon in android platform)。
较新的Android版本的NFC堆栈发生了显着变化(如今,整个Android NFC堆栈基于libnfc-nci,最初的目标是Broadcom的NFC控制器并实现了NFC论坛的NFC控制器接口规范)。因此,Open NFC的实施不再与更新的Android版本兼容。
注意,仍然存在通过注入NFC意图通过代码(例如,对单元测试有用)进行至少一些有限测试的方法。看到
但请注意,这些方法依赖于Android NFC堆栈的内部,您可能需要通过代码来查找您正在瞄准的任何Android版本以模拟正确的信息。