您的位置:首页 > 其它

安卓开发 第九篇 多个项目共用模块

2016-07-10 19:00 253 查看
最近忙新项目的事情,都没有时间写博文了,惭愧惭愧,今天抽得浮生半日闲,就来一篇吧。

我们在开发中可能会遇到同时开发几个app的情况,而这几个app在某些地方是相同的,而我们通常的做法是将相同的部分抽成一个library。这在eclipse中是很好实现的,而在Android studio中,我们一般都是抽成module,而一般这些module还是放在项目的根目录下的,要在另一个项目中使用,怎么办呢?

方法一:

将module拷贝到另一个项目的根目录下,在其settings.gradle 文件中的include 后面添加模块名。比如原来只有

include ':app'


然后我们添加一个utils模块:

include ':app',':utils'


最后别忘了在app那个build.gradle文件中的dependencies加上

compile  project(":utils")


大家应该发现了,这种办法挺笨的,如果一个app中的module有代码上的改变,就要将有改变的module拷贝,然后覆盖未被改变的module。

其实我们有更好的办法,让两个app指向同一个module。

方法二:

我们在app的根目录的的同级目录(也就是你项目所在的目录),建立一个新的文件夹,比如命名为library,然后把module拷贝进去,在两个app的settings.gradle 文件中的include 后面修改或添加模块名。比如原来是

include ':app'


我们改成:

include ':app',':..:library/:utils'


原来是:

include ':app',':utils'


我们也改成:

include ':app',':..:library/:utils'


之后别忘了修改app的build.gradle文件中的dependencies,两个app都要改哦:

compile  project(":..:library/:utils")


之后我们就可以共用这个library中的module了,是不是方便了很多(当然,两个项目得在同一个文件夹里面,library也在这个文件夹里面)。

好了,就到这里吧!

如果有更深的理解,本文将会修改;

如果有错误的地方,欢迎指正;

如果你有更好的理解,欢迎交流。

本文为原创文章,版权归博主所有,转载请注明出处。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: