Android引用本地aar包

作者: ladder_builder | 来源:发表于2017-03-08 16:45 被阅读341次

    生成aar包

    在build.gradle文件中,apply plugin: 'com.android.library'

    引用aar包

    在Application和Library中引用aar有些不同。
    假设aar包的名字问“test.aar”

    在Application module中引用aar

    1. 将aar放到module的aars目录下
    2. 在build.gradle中添加
    repositories {
        flatDir {
            dirs 'aars'
        }
    }
    dependencies {
        compile(name: 'test', ext: 'aar')
    }
    

    其实aar可以放到任意目录,只要保证和flatDir中的名字一致即可。

    在Library module中引用aar

    比如A是一个Libray module,B是Application module,其中B依赖A,而A又依赖一个本地的aar。
    此时如果还按上面那种方法去设置,变出现找不到aar的错误。

    这是因为Library A不会把自己的依赖打包给B,而只是告诉B自己的依赖列表,然后由B去加载所有的依赖包。

    但是由于B在自己module下的aars目录中没有发现test.aar,所有才会报错。
    问题的关键,就是要告诉B,应该如何去找test.aar。在B的build.gradle文件中,设置好正确的flatDir即可。

    repositories {
     flatDir {
         dirs project(":A").file('aars')
     }
    }
    

    相关文章

      网友评论

        本文标题:Android引用本地aar包

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