学习自
https://blog.csdn.net/zhaoyanjun6/article/details/76165252
这篇文章已经可以作为很详尽的Arouter的使用说明了
我觉得他比较厉害的点就在这里再记录下
为什么要使用路由?
从显示到隐式。显示会有类之间的直接依赖,改动成本高。隐式声明是模块间解耦的主流。
格式统一化。不管四大组件,URL跳转,服务,都是一样的请求形式。
不局限于四大组件。功能服务,URL跳转也被定义成角色。
按需加载
在初始的时候,只加载所有根节点。组先不加载。当用到某个角色的时候,才会去加载某个组。
获取Fragment实例
这个就太厉害了。通信起来就会很舒服。但是在哪里获取,依然是看你如何架构的,推荐不要在一个碎片中去获取另一个碎片的实例,因为这样耦合还是高啊。还是得自己架构。
URL跳转中间页
这个省去了许多web view client的操作。很好用。
服务
功能模块在这里被定义成服务。强大。
使用难点
虽然这套框架已经很好了。但是,如何去划分你项目中的角色,依然是个不小的挑战。依然需要丰富的架构经验。