美文网首页
利用Router将安卓项目模块化

利用Router将安卓项目模块化

作者: Coderoo | 来源:发表于2017-03-03 11:40 被阅读0次

    最近一直在学习安卓项目架构方面的知识,看了很多文章,接触到了很多架构思想,例如谷歌官方的MVP+Clean架构:https://github.com/glomadrian/MvpCleanArchitecture 、TMVP架构:http://www.jianshu.com/p/b49958e1889d 、模块化组件化http://blog.csdn.net/halibobo1998/article/details/51799915 。今天就说说利用开源框架Router 将项目模块化组件化。

    先来一张图感受下:


    APP组件是壳,并依赖其他的四个module,同时我们抽取一个基础库,我们可以将例如网络请求,图片加载,公用的UI,常用工具类,BaseActivty等等封装到里面,然后所有module都依赖这个基础库。这是我项目抽取的基础库:


    当项目越来越大,开发人员越来越多,组件化开发的优势就体现出来了,由于每个module相互独立,协同开发时就非常爽,每个模块可以独立开发,编译运行开发单个模块时可以共享资源和工具类等等。

    但是。。。。。。。。

    模块之间怎么通讯呢?例如我要从A模块跳转到B模块,由于模块相互独立,A中并不能找到B的引用,所以这时候就用用到Router路由器模式了。

    现在简单介绍下Router :

    首先你的gradle要3.3 下载地址http://download.csdn.net/album/detail/2265/1/2

    修改你项目gradle/wrapper/gradle-wrapper.propertities 在你项目的build.gradle添加依赖 在你的module的build.gradle添加 在你app的build.gradle中添加
    在主工程的Application中初始化 ModuleA中的Activity ModuleB中的Activity

    这样就可以实现各module之间的通讯了

    以上是楼主简单的应用,希望能帮到各位。

    相关文章

      网友评论

          本文标题:利用Router将安卓项目模块化

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