ARouter实现Module之间跳转

随着开发趋向于模块化,ARouter使用则也越来越多。用于模块化之间的通信问题。
如果需要在各个模块之间相互跳转,则按下方方式实现,已淌过坑。

首先,在根目录(项目)的 build.gradle 中添加如下代码

classpath 'com.alibaba:arouter-register:1.0.2'

然后在每个有跳转需求的Module中均需添加配置。

implementation 'com.alibaba:arouter-api:1.5.1'

集成完成以后,依旧在每个需要跳转的Module中添加如下配置。

注意。这里有个坑。kotlin项目和java的配置是不一样的。

先说kotlin:

首先,在头部添加插件

plugins {
    
    
    id 'com.android.library'
    id 'kotlin-android'
    id 'kotlin-android-extensions'
    id 'kotlin-kapt'//添加此插件
}

其次,在 defaultConfig 中添加如下:

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

最后,在dependencies中添加:

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

到此即可

java添加方法:
java不用添加kapt插件支持,只需在 defaultConfig 中:

扫描二维码关注公众号,回复: 13580538 查看本文章
defaultConfig {
    
    
       ...
        javaCompileOptions {
    
    
            annotationProcessorOptions {
    
    
                argument("AROUTER_MODULE_NAME", project.getName())
            }
        }
	   ...
    }

随后,在 dependencies 中添加:

annotationProcessor 'com.alibaba:arouter-compiler:1.5.1'

配置到这一步就完成了。只是使用ARouter的话。记得在Application中初始化:

ARouter.openDebug()
ARouter.init(this)

后续的跳转代码就不在这里细说了。配置到此结束。

猜你喜欢

转载自blog.csdn.net/lixinxiaos/article/details/114262181