Android 快速开发框架
XDroid
概述
XDroid是一个轻量级的 Android 快速开发框架,由UI
、Cache
、Event
、ImageLoader
、Kit
、Log
、Router
、Net
等几个部分组成。其设计思想是使用接口对各模块解耦规范化,不强依赖某些明确的三方类库,使得三方类库可*搭配组装,方便替换。可快速、*的进行 App 开发。
Demo 详细使用可参看 Demo
XDroid-Base
XDroid-Base 包含开发中常用的一些快速开发类,可作为一个简单的开发框架,由 Base、Cache、ImageLoader、Kit、Log、Router 等几个部分组成。可快速、*的按需扩展进行 App 开发。
传送门:https://github.com/fodroid/XDroid-Base
XDroid-Databinding
XDroid-Databinding 是 XDroid 快速开发框架的 Databinding 版本,大部分源码也与 XDroid 类似。
传送门:https://github.com/fodroid/XDroid-Databinding
XDroidMvp
XDroidMvp 是基于 XDroid 的 MVP 实现,不是传统意义的 MVP,不需写接口,可无缝切换 MVC,可能是当前最好用的 MVP 框架。
传送门:https://github.com/limedroid/XDroidMvp
XDroidMvp-Databinding
XDroidMvp-Databinding 是基于 XDroidMvp 的 Databinding 版本,大部分源码也与 XDroidMvp 类似。
传送门:开发中
XDroid 推出以来,得到了很多朋友的快速反馈,目前有很多朋友在新项目或是老项目中使用 XDroid,为了方便学习和交流,可以加入 QQ 群:
XDroid 交流群:153569290
特性
XDroid主要有这些特性:
- 基于 MVC,可快速切换到 MVP
- 提供
XActivity
、XFragment
、SimpleRecAdapter
、SimpleListAdapte
r 等基类,可快速进行开发 - 完整封装 XRecyclerView,可实现绝大部分需求
- QTContentLayout、XRecyclerContentLayout 实现 loading、error、empty、content 四种状态的*切换
- 实现了 Memory、Disk、SharedPreferences 三种方式的缓存,可*扩展
- 内置了
EventBus
,可*切换到其他事件订阅库 - 内置
Glide
,可*切换其他图片加载库 - 可输出漂亮的
Log
,支持 Json、Xml、Throwable 等,蝇量级实现 - 内置链式路由
- 内置常用工具类:package、random、file...,提供的都是非常常用的方法
- 内置加密工具类
XCodec
,你想要的加密姿势都有 - 默认使用
okhttputils
作为 api 请求,可任性切换 retrofit 等其他库 - 引入三方库极少
详细说明请前往wiki
Get Started
使用,仅需四步:
step1
clone 'XDroid'库到本地:
git clone https://github.com/limedroid/XDroid.git
step2
将 library 作为依赖库,在您的 app module 中 添加如下依赖:
compile project(':library')
step3
拷贝conf.gradle
到您的项目根目录,并修改项目 gradle 文件下引入:
apply from: "conf.gradle"
并添加:
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}
step4
修改XDroidConf
配置类,主要针对 log、cache、router、imageloader。若采用默认配置,此步骤可略过.
Demo 效果
重要说明
-
ButterKnife使用的是 8.4.0 版本,重点是
@BindView
,可以去项目官网查看。 -
EventBus使用的是 3.0.0 版本,使用注解
@Subscribe
,具体如何使用可以查看官网。
ToDo
- MVP、retrofit、rx 迁移(v2.0)
- 权限适配(v2.0)
- compact 工具(v3.0)
相关文档
我是如何搭建 Android 快速开发框架的之 UI 篇(上)
感谢
- 感谢干货提供的 api
关于我们
droidlover
Email : aaa@qq.com
Github : https://github.com/limedroid
简书:http://www.jianshu.com/u/276be5744ca0
fodroid
Email : aaa@qq.com
Github : https://github.com/fodroid
下一篇: oracle11g增加数据连接数
推荐阅读