Rabbits 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Rabbits 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Rabbits 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 Apache
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织
地区 国产
投 递 者 两味真火
适用人群 未知
收录时间 2017-05-23

软件简介

什么是Rabbits?

Rabbits是用于Android项目的路由组件。具有统一管理路由、支持动态更新等方便的特性。因为经常用到「跳转」这个词,想一想兔子经常和跳这个动作联系起来,所以这个项目就叫Rabbits了。

什么是路由?

如果不接触Web开发,通常看到路由应该是“路由器”。和网络中的路由类似,Web和App中的路由也是为了确定某种路径,启动某个页面或者组件。在Android中,路由一般都是完成url或者path到某个页面(通常是Activity)的映射。

为什么需要路由?

startActivity足够简单和直观,那么为什么要用路由呢?用一句话来概括就是路由可以统一App内的所有页面导航,原生页面或者WebView内的网页。如果你的项目涉及到用WebView展示某些内容,比如新闻、论坛等App,使用路由即可统一这些页面间的导航,业务逻辑层面完全不需要关心下一个页面的实现。
路由的存在使得在WebView中跳转到App原生页面变得异常简单,只需要在WebViewClient的回调中加入几行代码。
支持更新的路由,更使得A/B Test和Fallback到Wap页面变得轻而易举,仅仅需要下发路由表。

为什么需要Rabbits?

去年下半年开始,出现了很多个路由组件。Rabbits和他们相比又有那些不同呢?

编译时注解

Rabbits使用编译时注解,避免了运行时注解的性能损耗,同时不要求对被注解的类进行混淆排除,一定程度上还加强了安全性。

统一管理路由表

Rabbits的路由表使用json进行统一管理,避免url注解散落到各处的尴尬。Activity和Fragment类的注解仅标识该页面的page name,一旦设置不需要改动,不易出错。
Rabbits还会根据路由表生成辅助类管理url常量,绝大多数情况,项目中不会出现手写url和path的情况,减少typo的可能性。

动态更新

Rabbits提供动态更新的能力,一旦更新,立即生效;同时会将最新的路由表缓存到文件,下次冷启动将直接加载。

Fragment支持

Rabbits支持对Fragment进行注解,经过一些设置之后,可以实现在Fragment间完成类似Activity的导航效果。

总结起来,Rabbits配置简单,上手快,侵入性小,扩展丰富,非常值得尝试。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
6 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部