美文网首页
使用fat-aar编译打包多个aar库

使用fat-aar编译打包多个aar库

作者: RoboyCore | 来源:发表于2018-09-24 23:22 被阅读28次

1.在module(要打包的AAR库)中添加以下gradle文件

跟build.gradle同级

---fat-aar.gradle
 --- debug.gradle  (运行debug拷贝文件)

然后在build.gradle使用( apply plugin: 'com.android.library'下面 )

apply from: 'fat-aar.gradle' 

然后把需要被打包出来的依赖 compile 依赖改成fat-aar声明的embedded
exp

    embedded 'com.tencent.ilivesdk:ilivesdk:1.9.4'

最后assemble会在目录同级生成需要打包出来的模块

2.产生一系列的问题

1.Could not get unknown property 'prepareReleaseDependencies

由于fat-aar已经不被维护,使用的低版本gradle参数有些被高版本gradle移除,降低gradle版本至2.14.1-all(dependencies 2.2.3)
然后重新sync

2.依赖方式修改

不支持implementation ,改成compile ,相关测试类也需要修改

3.低版本3.0以下AS需要指定buildToolsVersion

在build.gradle下添加buildToolsVersion

4.google仓库无法使用,需要在maven中声明Google库

google()仓库添加于 gradle 4.0

添加build.gradle根目录仓库中

 maven {
            url 'https://maven.google.com/'
            name 'Google'
        }

5.compileOptions ,jack编译器需要打开或者移除compileOptions

  jackOptions { //defaultConfig中添加
            enabled true
        }
 compileOptions {// android同级目录添加
        targetCompatibility 1.8
        sourceCompatibility 1.8
    }

由于Jack不能在module中使用,
修改成

gradle.projectsEvaluated {
    tasks.withType(JavaCompile) {
        options.compilerArgs << "-Xbootclasspath/a:" + System.properties.get("java.home") + "/lib/rt.jar"
    }
}

经过测试Jack早已被废弃,不被推荐使用,而且Java8并不能在低版本中使用,而且添加retrolambda后链接的aar库运行lambda会报错(—。—)最后还是手动改回去了,蓝瘦香菇。

  1. Unknown host 'd29vzk4ow07wi7.cloudfront.net

翻墙打开即可访问下载相关

7.Process 'command 'C:\Android\Sdk\build-tools\24.0.2\aapt.exe'' finished with non-zero exit value 1

低版本api24 icon不支持round,步骤同4,无需降低依赖版本

8.依赖被混合打包进aar之后,其他人引用相关依赖会导致merge冲突
添加 传递关系

compile (project(':applibrary')) {  // Notice the parentheses around project
    transitive false
}

9.Minimum supported Gradle version is 3.3. Current version is 2.14.1.

修改gradle,不使用默认,改成2.14.1版本,可在Setting/Build/Gradle设置中Use local gradle distribution下载后解压放置在.gradle中
路径设置C:/Users/xx/.gradle/wrapper/dists/gradle-2.14.1-all

10.语言问题,代码中的中文会乱码

相关文章

网友评论

      本文标题:使用fat-aar编译打包多个aar库

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