Android Studio3.0 引用Module的本质和共享Module给其他Module

如何在Module中去引用另外一个Module?

方法一:

  Google提供的自身的依赖,compile引入需要用到Module。

方法二:

  每个Module最终都会被编译成一个对应的后缀为aar的文件<..\moduleName\build\outputs\aar\XXX.aar>,在需要用到的Module中直接引用此文件。这里aar文件的引入方式对比直接引用Module稍不同,如下:

  第一步: 需要先在宿主Module中的build.gradle下的android{}下添加如下代码:

repositories {
    flatDir {
        dirs 'libs'
    }
}

   第二步:添加依赖

compile (name:'aarName', ext:'aar')

 

宿主Module中如何使用外边Module中的jar文件?<仅仅介绍Android studio3.0及之上的解决方式>

compile是Android studio 3.0之前Google提供用于引入外部类库的一种方式。Android studio3.0之后compile被替换成为implementation和api,两种方式。

implementation:如果是引入本地libs文件下的jar文件,表示该jar文件仅仅在当前Module中才能被使用,外部引用的Module中无法直接使用该jar文件。

api:如果是引入本地libs文件下的jar文件,表示该jar文件不仅仅可以在当前Module中能使用,外部引用的Module也可以使用该jar文件。

compile only: 顾名思义表示仅仅参与编译,真正打包的时候并不会被打包到APK中。

runtime only: 仅仅是打包的时候会被打包到APK中,不参与编译(感觉没啥用)

其他的没啥说的.....

  

 

 

posted @ 2018-04-11 10:54  冒泡的章鱼  阅读(3435)  评论(0编辑  收藏  举报