Skip to content

如何一步步实现一个类似ARouter的Android路由框架,实现不同module的相互跳转,跟着我来实现就可以了。

Notifications You must be signed in to change notification settings

Xiasm/EasyRouter

Repository files navigation

简介

路由在项目中用了很长一段时间了,一直用的ARouter,很早的时候,我就把ARouter里里外外研究了一番,可以说里面干货多多,但时间长了就有些记不住了,甚至一些技术点都记的混淆了。 于是便萌生了写一篇技术博客的想法,后来又觉着干巴巴的写一篇文章不足以让我认识的更深刻,就想着可否按照ARouter的思想自己实现一个简单的路由框架呢?
后来,在我不断地学习推动以及参考众多资料的情况下,耗费了几个月的业余时间,终于完成了这个项目。

这个项目对你有什么帮助?

通常看来,我要理解ARouter,就要去读ARouter的源码,这当然是不错的方法,但需要花费很多的时间去理解源码,而这个项目能给你的好处是一步步有条理的指导你如何去设计路由框架、一些技术点的作用及为什么要用这些技术等等,并且重点放在讲解,直到最后设计出来一款自己的路由框架,所以说呢,干货多多,简要列举几点:

  • 首先,你可以学习到如何搭建组件化架构

  • 其次,你可以学习到apt、javapoet等框架开发利器

  • 再者,你可以手动实现自己的依赖注入框架

  • 最后,像instantrun处理、框架设计等等

项目理解推荐

既然你来了,我想我们的目的很明确,就是要从根本上理解路由。所以我推荐大家把demo clone下来在电脑上跑一遍,然后边浏览WIKI的文档边读代码,这样才能快速的理解设计的思想。

文档指导,点击跳转wiki

目录:

一、从组件化引入路由设计需要满足的条件

二、通过Route注解去探究如何实现路由跳转

三、利用apt和javapoet生成路由映射文件

四、框架的设计

五、框架的初始化

六、实现路由跳转

七、为什么需要依赖注入

八、Activity的属性注入

联系我

email:xiasem@163.com & devxiasm@gmail.com
微信:xsm0824mn003

About

如何一步步实现一个类似ARouter的Android路由框架,实现不同module的相互跳转,跟着我来实现就可以了。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages