Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在开发一个与 Arduino 交互的 Android 应用程序。我正在尝试管理多个活动,每个活动都负责控制 Arduino 板的特定部分。
不幸的是,网络上的教程只使用一项活动。所以我不知道如何继续保持与 Arduino 的连接,同时导航到一个新的 Activity 或正确关闭它,然后在新的 Activity 上重新打开它。
任何想法?
您可以使用服务连接到 Arduino 并保持该连接打开。然后,您的活动可以与服务对话,开始、停止、切换等。
编辑:如何做到这一点已经由另一个问题/答案处理:
长时间运行的 ADK 附件(服务?)
我以前没有在 Java 中使用过 Arduino,但您可能想要遵循单例模式。使用单例模式,您用来连接到它的任何对象都可以从多个活动和多个线程中访问。
不过,使用 Singleton 只会缓解您的问题。您仍然需要弄清楚如何关闭/重新打开它。
此外,了解活动生命周期的工作原理也很重要。如果用户接到电话,屏幕关闭,或者屏幕方向发生变化,它会破坏您的活动并重新创建它。您将不得不处理如何保存和恢复原来的位置。这很可能意味着您必须关闭/重新打开连接。