当前位置:首页 > 谈天说地

Android Gradle模块依赖替换使用技巧

34资源网2022-06-25479

背景

我们在多模块项目开发过程中,会遇到这样的场景,工程里依赖了一个自己的或者其他同事的 aar 模块,有时候为了开发调试方便,经常会把 aar 改为本地源码依赖,开发完毕并提交的时候,会再修改回 aar 依赖,这样就会很不方便,开发流程图示如下:

解决

一开始我们通过在 appbuild.gradle 里的 dependency 判断如果是需要本地依赖的 aar,就替换为 implementation project 依赖,伪代码如下:

dependencies {
    if(enablelocalmodule) {
        implementation 'custom:test:0.0.1'
    } else {
        implementation project(path: ':test')
    }
}

这样就可以不用每次提交代码还要修改回 aar 依赖,但是如果其他模块如果也依赖了该 aar 模块,就会出现问题,虽然可以继续修改其他模块里的依赖方式,但是这样就会有侵入性,而且不能彻底解决问题,仍然有可能出现本地依赖和 aar 依赖的代码不一致问题。

gradle 官方针对这种场景提供了更好的解决方式 dependencysubstitution,使用方式如下:

步骤1:

settting.gradle,添加如下代码:

// 加载本地 module
if (file("local.properties").exists()) {
    def properties = new properties()
    def inputstream = file("local.properties").newdatainputstream()
    properties.load( inputstream )
    def modulename = properties.getproperty("modulename")
    def modulepath = properties.getproperty("modulepath")
    if (modulename != null && modulepath != null) {
        include modulename
        project(modulename).projectdir = file(modulepath)
    }
}

步骤2:

appbuild.gradle 添加以下代码

configurations.all {
    resolutionstrategy.dependencysubstitution.all { dependencysubstitution dependency ->
        // use local module
        if (dependency.requested instanceof modulecomponentselector && dependency.requested.group == "custom") {
            def targetproject = findproject(":test")
            if (targetproject != null) {
                dependency.usetarget targetproject
            }
        }
    }
}

步骤3:

local.properties

modulename=:test
modulepath=../androidstudioprojects/testproject/testmodule

到这里就大功告成了,后续只需要在 local.properties 里开启和关闭,即可实现 aar 模块本地依赖调试,提交代码也不用去手动修改回 aar 依赖。

以上就是android gradle模块依赖替换使用技巧的详细内容,更多关于android gradle模块依赖替换的资料请关注萬仟网其它相关文章!

看完文章,还可以扫描下面的二维码下载快手极速版领4元红包

快手极速版二维码

快手极速版新人见面礼

除了扫码领红包之外,大家还可以在快手极速版做签到,看视频,做任务,参与抽奖,邀请好友赚钱)。

邀请两个好友奖最高196元,如下图所示:

快手极速版邀请好友奖励

扫描二维码推送至手机访问。

版权声明:本文由34楼发布,如需转载请注明出处。

本文链接:https://www.34l.com/post/17999.html

分享给朋友:

相关文章

女人励志语录20句,满满的正能量句子

女人励志语录20句,满满的正能量句子

1、每一个太阳升起,老想带去期待的问候:让每日的气体全是清爽让每日的情绪全是伸展让每日的获得全是丰富!…

2021年创业的话,试试这几个点子行不行

2021年创业的话,试试这几个点子行不行

想要在平淡的生活工作中发现一些好的创业项目还真没那么容易。2019年即将过去一半,那么大家有没有发现什么2019年最新创业点子呢?哪些项目的市场前景以及利润可观呢?下面跟随快马小编一起来看看吧。说不定能够激发你的创业灵感!…

抖音如果让我遇见你而你正当年轻是什么歌曲?

抖音如果让我遇见你而你正当年轻是什么歌曲?

《抖音》短视频平台上有不少老歌经过翻唱火了,可能刚好歌词传递的情感引起了网友们的共鸣,而最近比较火的一首歌歌词大概是如果让我遇见你而你正当年轻,好多网友不知道首是什么歌曲?小编刚开始也不知道,后来经过搜索得知这是一首老歌《怨苍天变了心》,是…

失控玩家怎么样?好看吗?值不值得看?

失控玩家怎么样?好看吗?值不值得看?

每部电影出来都会有人说好看,有人说不好看。只是有些电影拍出来会更加符合大众口味,有些则只适合小部分人看。那么,最近热播的这部失控玩家怎么样?好看吗?值不值得看?今天小编就和大家说说这部适合大众口味的电影。…

抖音传话筒项目(傻瓜式复制粘贴轻松月入3000+)

抖音传话筒项目(傻瓜式复制粘贴轻松月入3000+)

可能你觉得你写不出优秀的文案,可能你觉得你没办法配音,可能你觉得不好意思露脸,但又想通过抖音来赚钱,那么今天给大家来说说这个抖音传话筒项目,只需要复制粘贴,一个月轻松赚到3000+,无需露脸配音,更加不需要写文案。…

手机拍视频软件哪个好用(新手拍好人像摄影技巧)

手机拍视频软件哪个好用(新手拍好人像摄影技巧)

每一个热爱生活的人都关注了“手机摄影技巧”…