我们正在开发android库并且没有打开源。但是,为了方便客户,它分布在maven存储库中。
我们还为此库提供了打开源的示例应用程序。
我们正在尝试进行设置以实现与库同时开发的示例应用程序。因此,如果需要可以方便地进行调试并动态修改代码。
因此我们为app和库创建了两个git存储库。但是将它们合并的最佳方式是什么。我们看到了下一个可能性:
它们看起来都不高效优雅。但与此同时,我们正在建设的东西并不是唯一的。我不知道其他人是如何做到的。
我尝试在github上搜索库,但所有这些都是公共库,示例应用只是子模块。
重要提示 - 我们正在使用Android Studio,因此最好尽量减少打开的AS窗口的数量
答案 0 :(得分:1)
您可以创建常规的多项目结构,但可以根据某些条件19.2. Gradle properties and system properties切换依赖项。这样,dev机器上的示例项目可以访问可以编辑和重建的库项目,但是样本的开源用户将回退到maven libary binary dep。
multiproject (under git as 3rd project or as part of the library git)
library (under git)
build.gradle
sample (under another git)
build.gradle (if has libmodule defined use it, otherwise repo artefact)
build.gradle
settings.gradle
伪代码:
dependencies {
compile hasDevMachineBoolean() ? project(':library')
: "com.packagename.sdk:library:1.0"
}