美文网首页
Android依赖项目打包aar较优方法

Android依赖项目打包aar较优方法

作者: WangKiven | 来源:发表于2017-09-22 10:37 被阅读112次

据说打成aar包后,能减少编译时间。然后尝试了一下,感觉提升不大!不过还是记录一下打包过程,免得忘了。毕竟这种方法,是本人思考后,想到的比较好的方法。不用去复制aar包了。

限制条件:需要将被依赖的项目引用到app所在的工程下。本人的习惯,喜欢直接引用项目,方便随时修改代码。

应用项目。在app所在工程的settings.gradle中添加

include ':yourLibrary'
// 此处本人使用相对路径,库所在工程与app所在工程在同一级目录下
project(':yourLibrary').projectDir = new File('../LibProject/yourLibrary')

配置maven。在app所在工程的build.gradle中配置

buildscript {
    repositories {
        /*jcenter()*/
        maven{ url 'http://maven.aliyun.com/nexus/content/groups/public'}
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
        /* maven 添加代码*/
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3'
        classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
    }
}
......

依赖项目的配置。在依赖的项目的build.gradle中添加配置

//apply plugin: 'com.android.library'apply plugin: 'java'
apply plugin: 'groovy'
apply plugin: 'maven'
android {
 ......
}
dependencies {
  ......
}
// 下面为添加的配置, 根据具体情况修改group和version,不建议修改uploadArchives中的内容
group = 'com.sckiven.libraryName'
version = '1.0'
uploadArchives {
    repositories {
        flatDir {
            name 'pcLocal'
            dir "$parent.rootDir/maven/aars"
        }
    }
}

配置app项目。在app项目的build.gradle中添加配置

apply plugin: 'com.android.library'
android {
 ......
}
// 开始添加
repositories {
    flatDir {
        dirs "$parent.rootDir/maven/aars"
    }
}
dependencies {
  ......
// 'libraryName-1.0':与上文'com.sckiven.libraryName'中的不一样。可在工程所在目录下maven/aars中找到aar文件,将名称复制过来就行。
compile(name: 'libraryName-1.0', ext: 'aar')
}

打好aar包后,可将引用的项目隐藏。即在app所在工程的settings.gradle中添加代码可注释掉,需要修改代码时再打开

相关文章

网友评论

      本文标题:Android依赖项目打包aar较优方法

      本文链接:https://www.haomeiwen.com/subject/jenbrxtx.html