开发过程中,我遇到过这样一种需求,多个App并行开发,但是基础库(网络、图片、自定义view之类)完全可以用同一套,基础库一般不会频繁修改,但是如果修改了某一些代码,又希望对所有引用基础库的工程生效,也不需要多次复制代码或者重复道服module。
这里我介绍一种很方式
先说关键:把别的Prokect的Module,变成自己的Module
这里说的把别的Prokect的Module,变成自己的Module,并不指简单的“import Module”,而是直接引用,两个工程的都可以使用这个module,一个修改,领个工程同事生效,只有一份代码
这里的“工程”是Project,不是Module,类似于Eclipse的工程,这里的多工程都是独立的,都可以作为App跑起来
这里我大致分为三个工程,业务工程(Bussiness)、引用库(Library)、UI库(UIKit)。在同一个文件夹里,新建三个工程。
image引用库(Library)、UI库(UIKit):
lib.png uikit.png业务工程(Bussiness)
bussiness.png实现代码
在业务工程(Bussiness)的setting.gradle这样写,把其他工程的module转成自己的module
include ':app'
include 'Lib'
project(':Lib').projectDir = new File('../Library/Lib')
include 'UIKitLib'
project(':UIKitLib').projectDir = new File('../UIKit/UIKitLib')
在业务工程(Bussiness)的App的build.gradle这样写,跟阴天自己的module一样的
dependencies {
compile project(':Lib')
compile project(':UIKitLib')
}
这里有个实例:代码
网友评论