ARouter爬坑

2020-12-03  本文已影响0人  H修道院的救赎

最近要做新项目了,准备从头准备一个自己的框架,以便于以后开发新项目不用再从头封装网络请求库,版本更新库和一些utils工具;鉴于对组件化的向往,公司的新项目准备做成组件化的,用library模块依赖我自己的框架库,library模块上面是中间层封装的http模块,database模块,网络请求模块和utils模块,用base模块依赖中间层模块,在base模块上面是业务模块比如账号管理模块,商城模块,个人中心模块,在上层当然就是我们App的入口模块了,大概如下图:


whiteboardappdotorg20201203162656.png

那么组件化已经使用,组件化通讯工具当然必不可少了!我使用的是ARouter,于是,踩了好几脚大坑!

在Arouter的使用过程中 第一步先在Gradle添加依赖


android{      

        defaultConfig {

            ... javaCompileOptions { 

                       annotationProcessorOptions { 

                               arguments=[AROUTER_MODULE_NAME: project.getName()] 
                        } 
                   } 
            }
   }

dependencies{
        //Replace with the latest version
         compile'com.alibaba:arouter-api:?'
         annotationProcessor'com.alibaba:arouter-compiler:?'
 }

然后,在使用ARouter跳转之前先初始化

    ARouter.init(this);

基本组件化通讯就完成了,下面就是业务时间了,但是我的项目是kotlin项目,所以请注意
kotlin项目配置如下:

apply plugin 'kotlin-kapt'

kapt {
        arguments {
                arg("AROUTER_MODULE_NAME", project.getName())
            }
        }

kapt 'com.alibaba:arouter-compiler:?'

kotlin和java的写法是不一样的,如果Gradle配置错了,那么路由是无法注册进去的,自然就找不到路径了。

上一篇下一篇

猜你喜欢

热点阅读