参考链接:

Module中依赖引入关键词的区别:
Module打包aar的过程以及引用:


1. jar和aar的区别

  • jar : 仅仅包含class文件和清单文件,不支持资源文件
  • aar : 包含class文件、清单文件和资源文件,是Android的专属jar文件

2. Phone & Table Module和Android Library的区别

  • Phone & Table Module: 泛指手机或平板电脑的Android项目
  • Android Library: Android类库,可以将该个Library打包成aar,在其它项目或Module中进行引用

3. 项目和类库的区别

  • 项目: 可以运行的Android项目
  • 类库: 不可独立运行,在其它项目中进行应用

两者最明显的区别是在各自的Build.Gradle文件中,区别如下:
- 项目: apply plugin: ‘com.android.application’
- 类库: apply plugin: ‘com.android.library’


4. 如何将Moudle(这里指类库也就是Android Library)打包成aar文件

  • 1. 点击Android Studio右侧边栏的Gradle
  • 2. 弹出当前项目下的Module时,选中自己想要打包的Module
  • 3. 展开选项时,选择Tasks–build–assemble,双击assemble
  • 4. 等待编译完成
  • 5. 在当前Module下的build–outputs–aar–xxxx–release.aar

android 怎么把aar包里面得包删了 android aar包含aar_jar和aar的区别


android 怎么把aar包里面得包删了 android aar包含aar_Module引用aar_02


android 怎么把aar包里面得包删了 android aar包含aar_Module引用aar_03


android 怎么把aar包里面得包删了 android aar包含aar_Module生成aar_04


android 怎么把aar包里面得包删了 android aar包含aar_Module引用aar_05

我们等待程序编译完毕,随后即可在输出的aar中找到,如下:

android 怎么把aar包里面得包删了 android aar包含aar_jar和aar的区别_06


android 怎么把aar包里面得包删了 android aar包含aar_jar和aar的区别_07


android 怎么把aar包里面得包删了 android aar包含aar_依赖注入关键词的区别_08


android 怎么把aar包里面得包删了 android aar包含aar_Module生成aar_09


android 怎么把aar包里面得包删了 android aar包含aar_Android_10

至此:打包完成


4. 如何在我们的项目中应用我们打包好的Module呢?

  • 1. 将我们打包的aar文件放入我们的项目module对应的lib文件中
  • 2. 修改对应Module下的Build.Gradle文件,添加以下代码
repositories{
        flatDir(dirs :"libs")
    }
  • 3. 在依赖配置中添加如下代码:
compile(name:"baselibary-release",ext:"aar")
  • 4. 重新编译即可运用

具体如下图:

android 怎么把aar包里面得包删了 android aar包含aar_Android_11


4. 关于Module中的一些依赖关键词的区别

  • 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文件。