我正在使用 Galaxy Nexus 手机和官方Arduino ADK板开发 Android 配件。我正在使用此处提供的所有标准 Arduino 库。我希望能够在运行时调试我的 Android 代码,因此我按照 Google 在其“调试注意事项”文档中的说明进行操作,以便通过 WiFi 进行远程调试。
当我通过 USB 连接到手机时,我可以很好地调试(当然它不是在与 Arduino 板通话)。当我通过 WiFi 连接到手机时,我可以很好地调试。但是,当我将电路板插入手机时,它不再自动启动我的应用程序(已在 ADK 设备中注册)。因此,我手动启动了我的应用程序,但它找不到 Arduino 配件。如果我切换回 USB 调试并将 ADK 板重新连接到手机,它会像往常一样自动启动,一切都很好,但是我又回到了无法调试的状态。
在所有这些过程中,代码都没有变化。我所做的只是改变 adb 工具到达手机的方式。任何猜测为什么手机和我的应用程序不能再看到 ADK 板?
简而言之:
- 如果手机设置为通过 USB 调试,它可以毫无问题地与 Arduino ADK 通信。
- 如果我调用“adb tcpip 5555 < enter> adb connect < device-ip-address>:5555”,我可以毫无问题地远程调试手机。
- 如果我现在用 USB 线将 ADK 板连接到手机,手机找不到 ADK 板,但我仍然可以通过 WiFi 进行远程调试。这就是我知道无法找到附件的方式。
编辑:手机运行的是 Android 4.1.1,而 Arduino 是 1.0.1。