-
支持客户端进程和服务端进程自动重连
-
支持VirtualApk
=================================================================================
滴滴乘客端包容万象,拥有众多的业务和组件,早在15年就已经启动组件化重构。使用滴滴自研的基于JavaSPI插件技术,动态的生成从接口到实现的映射关系,完成了组件化的通信功能,并且应用到了整个滴滴的Android体系中。虽然SPI性能优良、使用便捷,但同时功能单一、支持的场景少也是一直存在的问题。随着组件化实践的常态化,急需要一款功能强大,适合滴滴的场景,定制化程度高的路由框架。
目前市面上已经存在几款路由框架了,比如ARouter,WMRouter。不过滴滴业务繁多,平台化遍布各种场景,对路由的定制化需求强烈,很多功能市面上的路由是不支持的,比如:
-
ARouter作为路由的先行者,由于开发较早功能简单,路由查找过程性能损耗较大
-
WMRouter在路由的性能上仍然有一定优化空间,没有导航到Fragment/View、回调式ActivityResult,使用ServiceLoader稍显繁琐且无法动态注册以及多维过滤
-
现今没有一款路由框架对完整的跨进程和跨应用有较好的支持,这在滴滴定制车团队有着强诉求
-
同时没有一款路由对Fragment提供更多的扩展能力,DRouter在鸿鹄和车载屏项目以及更多Fragment的场景可以提供支持
基于以上问题,从2018年开始自研了DRouer路由框架,为滴滴的平台化服务几十种场景。
================================================================================