一、问题场景

项目中有用到阿里的 ARouter 组件,定义路由的时候添加了一个 scheme://home/categories,结果一直报该错误:

Type com.alibaba.android.arouter.routes.ARouter$$Group$$home 
is defined multiple times

项目中之前也有用到过 scheme://home/mine 这样的路由是没有问题的。

比较奇怪的是为什么这个就会有问题呢?

二、问题解决

换成 scheme://home2/categories 就不会有问题了。

三、问题原因

我的项目中依赖多个 module,其中有一个module 有以 home 分组的路由,如果另一个 module 下也有以 home 分组的路由就会有问题。因为 ARouter 会为每一个 Module 生成相应的分组,这样就会造成一个 App 下存在多个 home 分组,就会造成 defined multiple times 的问题,只要为 group 区分一下不同 module 即可解决。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐