【发布时间】:2015-07-21 03:19:53
【问题描述】:
我正在学习构建可用于不同项目的 Android 共享库。我有几个关于这个主题的问题。在我进入问题之前,以下是我到目前为止所做的:
- 创建库项目
- 创建另一个应用程序项目并将上述库作为模块导入
我的问题是:
- 库项目的代码是否自动与导入到应用程序项目中的代码同步?如何实现?
- 如果没有,我还能做些什么来确保只需要更新一次共享库?
我正在使用 Android Studio IDE。
谢谢,
【问题讨论】:
标签: android
我正在学习构建可用于不同项目的 Android 共享库。我有几个关于这个主题的问题。在我进入问题之前,以下是我到目前为止所做的:
我的问题是:
我正在使用 Android Studio IDE。
谢谢,
【问题讨论】:
标签: android
啊,是的,这在很多情况下都非常有用。您可以执行以下操作来实现此目的。
假设您有两个项目 - MyApplication 和 MyLibraryDemo 包含库模块 libmodule,路径如下:
我的应用程序 - "/../AndroidStudioProjects/MyApplication"
MyLibraryDemo - "/../AndroidStudioProjects/MyLibraryDemo"
libmodule - "/../AndroidStudioProjects/MyLibraryDemo/libmodule"
假设您尝试在 MyApplication 中使用 libmodule。
然后,在MyApplication 项目的settings.gradle 中,执行此操作
include ':app', ":libmodule"
project(':libmodule').projectDir = new File(settingsDir, '../MyLibraryDemo/libmodule')
您可能需要进行相关的更正,但我希望链接另一个模块的想法是明确的。
一切顺利:)
【讨论】:
:app 文件夹和settingsDir 是什么
compile project(':libmodule')时,我不能将它作为依赖项Error:Unable to find module with Gradle path ':libmodule' (needed by module 'app'.) 引用
从应用程序项目外部导入模块会在应用程序内部创建库的副本。如果您的系统支持,创建符号链接将只允许您拥有一份代码副本。
否则,您可以将整个库项目移动到您的应用程序中,并将其添加到您的 settings.gradle。
如果您希望为这两个项目拥有单独的 git 存储库,请考虑使用 git 子模块。
【讨论】: