我正在为应用程序开发服务器后端组件,目标之一是记录通过应用程序传输的所有消息(使用 MQTT)。为此,我想将该应用程序用作某种库,以便我可以使用其中定义的对象来解析通过的消息,因为没有任何消息会作为标准类型传输。我使用 IntelliJ 进行 Java 开发,使用 Android Studio 进行 Android 开发。这可能吗?我以前能够将代码作为模块导入,这让我可以使用其中定义的类型,但是当我去构建项目时,它也尝试构建 Android 代码,但失败了,因为 IntelliJ 没有设置 Android 依赖项。我应该尝试将 Android SDK 设置为应用程序模块中的依赖项,然后进行构建吗?或者我以错误的方式处理这个问题? (如果可能的话)我知道还有一些库项目看起来像是一个可能的解决方案,它只需要将所有适用的代码重构到不同的项目中,我希望这不是必要的。
最佳答案
尝试将整个 Android 应用程序作为库导入到不同的代码库中可能行不通;您不希望非 Android 应用程序链接所有 Android 代码,并且在资源和整个环境的情况下,很难让它编译。</p>
更好的方法是获取需要跨平台工作的所有代码,并将其提炼成一个可以包含在多个上下文中的普通 Java 库。在 Android 端,您可以将其作为普通 Java 库项目包含在内,或者将其编译为 jar 并包含该 jar。
关于java - 在非 Android Java 项目中使用 Android 应用程序的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20456014/