Android架构Android知识Android技术知识

Android 路由模块分析笔记

2017-06-07  本文已影响219人  HelloCsl

为什么需要路由模块

方便不同的模块间相互跳转,增加模块间的独立性,而显式的 startActivity 方式显然是做不到的,而且简洁优雅,当然还有其他更多的优点

需要考虑实现的基本功能

开源库分析

ActivityRouter

特点:编译时注解不支持 Fragment多组件支持

实现

Rabbits

特点:编译时注解拦截器mappings更新(似乎没什么用?)多组件支持Fragment 支持(需要自己扩展)

实现

小结

Rabbit 相对 ActivityRouter 来说功能更多,更具有可扩展性,Rabbit 的路由表需要从 json 文件中解析,这种方式来管理虽然可能使得路由看起来更清晰且可以动态更新,但毕竟是耗时操作,还是有些小顾虑,作者也提供了一个异步的加载方法,但我觉得可以考虑使用 ActivityRouter 的方式来实现更好,纯靠 APT 来生成路由映射关系

更多

上一篇 下一篇

猜你喜欢

热点阅读