Android Studio3.0 引用Module的本质和共享Module给其他Module
Posted 冒泡的章鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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中,不参与编译(感觉没啥用)
其他的没啥说的.....
以上是关于Android Studio3.0 引用Module的本质和共享Module给其他Module的主要内容,如果未能解决你的问题,请参考以下文章
[转]android studio3.0之后查看 gradle console窗口
Android Studio3.0 配置ButterKnife出错的解决
Android Studio3.0 配置AndroidAnnotation注解框架
Android Studio3.0配置Butterknife8.8.1及大坑
Android Studio3.0 flavorDimensions多维度理解(版本差异化打包) : flavorDimensions dimension
Android Studio3.0 flavorDimensions多维度理解(版本差异化打包) : flavorDimensions dimension