Git Product home page Git Product logo

xdroid's Introduction

#XDroid 轻量级的Android快速开发框架

概述

XDroid是一个轻量级的Android快速开发框架,由UICacheEventImageLoaderKitLogRouterNet等几个部分组成。其设计**是使用接口对各模块解耦规范化,不强依赖某些明确的三方类库,使得三方类库可自由搭配组装,方便替换。可快速、自由的进行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
  • 提供XActivityXFragmentSimpleRecAdapterSimpleListAdapter等基类,可快速进行开发
  • 完整封装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快速开发框架的(概述)

我是如何搭建Android快速开发框架的之UI篇(上)

感谢

  • 感谢干货提供的api

关于我们

droidlover

Email : [email protected]

Github : https://github.com/limedroid

简书http://www.jianshu.com/u/276be5744ca0

fodroid

Email : [email protected]

Github : https://github.com/fodroid

简书http://www.jianshu.com/u/caf7ea3607ed

xdroid's People

Contributors

limedroid avatar fodroid avatar

Stargazers

PEP 8 Speaks avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.