• Android自定义公共引入库(多个项目引入同一自定义框架类库)


    概述

    Android开发快捷的一个地方就是可以引入别人写好的类库模块,供我们高效开发和使用。
    有时候我们自已开发的项目多了,也会有自己的一些类库包,但毕竟还在开发期,需要经常变更,所以还没办法直接上传到Maven中进行简单的参考引用。

    这时候就要用一些小技巧,把我们自己的公共类库引入到不同的专案中,需要修改时,只要修改公共类库一份代码,其他专案重新编译即可生效。

    第一步:新建公共类库

    New Project > No Activity 会默认生成一个空的带有app模块的专案。
    专案配置settings.gradle文件中的结构

    rootProject.name = "ZGLibrary"
    include ':app'
    
    • 1
    • 2

    实例如:新增zgmvp模块

    切换到project目录,然后在专案名称上右键,new > module
    确保新模块的名称前面没有:app字样,不然会将新模块建立到app模块目录下面去
    建立完成后会在app同级目录下生成新模块的目录,此时再切换回android目录即可看到刚才建立的新模块了。

    此时再去检查settings.gradle文件会发现多了一行
    include ':zgmvp'

    至此,重建专案,即可在同一个项目中不同模块间实现了互相调用。

    加入参考

    因为在同一专案下,使用Android Studio编译时都是整个专案一起编译,所以,不用再在app模块下添加编译library的语句

    如果是在其他专案下被引用时,则要在相应的app > build.gradle > dependencies下加上编译类库的语句

    implementation project(':zgmvp')
    
    • 1

    第二步:跨专案引用公共类库

    单个模块引入

    settings.gradle中添加如下代码,引入哪个模块,就把哪个模块的目录指定出来

    include ':zgmvp'
    project(':zgmvp').projectDir = new File("../ZGLibrary", "zgmvp")
    
    • 1
    • 2

    上面修改完成后,记得在build.gradle中加入相应参考,然后清空专案重建一下看看是不是生成了引入的模块相应的build.gradle了,也就代表成功了

    在这里插入图片描述
    测试了下,去修改完公共类库后,再回到当前专案,重建时就会把相关的变更引入进来。

    多模块引入

    先引入专案目录,指定好专案目录后再分别引入相应模块

    实际使用时发现这种直接引入整个方案的会报gradle version错误,后期还是以上面的单个模块引入为主。
    另外这种方式也有个问题就是如果我只想要专案下的一个小项目,却也要引入整个方案也不好。

    include ':ZGLibrary'
    project(':ZGLibrary').projectDir = new File("../ZGLibrary")
    include ':ZGLibrary:zgmvp'
    
    • 1
    • 2
    • 3
  • 相关阅读:
    智慧医疗应用和研究资料合集
    【web-攻击访问控制】(5.3)保障访问控制的安全:多层权限模型
    JC/T 1006-2018 釉面钢化及半钢化玻璃检测
    CNN的实现与可视化
    LeetCode刷题笔记【35】:动态规划专题-7(爬楼梯、零钱兑换、完全平方数)
    JAVAEE 基于SSM的课程设计
    小红书关键词排名怎么做?小红书搜索排名提升技巧
    微服务保护-流量控制
    关于二进制
    一些网络的常见问题
  • 原文地址:https://blog.csdn.net/ymtianyu/article/details/127789168