XDroidMvp是XDroidAndroid快速开发框架的MVP版本,其使用方式类似于XDroid,大部分源码也来自XDroid。

XDroidMvp主要会有这些特性:

无需写Contract! 无需写Present接口! 无需写View接口!

新增:

Mvp实现
RxJava & RxAndroid
权限适配 RxPermission
事件订阅默认采用 RxBus
网络交互:
Retrofit + rx
Https
统一异常处理
缓存
支持多个baseUrl
。。。。
无需担心rx内存泄漏

保留:

提供XActivity、XFragment、SimpleRecAdapter、SimpleListAdapter等基类,可快速进行开发
完整封装XRecyclerView,可实现绝大部分需求
XStateController、XRecyclerContentLayout实现loading、error、empty、content四种状态的自由切换
实现了Memory、Disk、SharedPreferences三种方式的缓存,可自由扩展
内置了RxBus,可自由切换到其他事件订阅库
内置Glide,可自由切换其他图片加载库
可输出漂亮的Log,支持Json、Xml、Throwable等,蝇量级实现
内置链式路由
内置常用工具类:package、random、file...,提供的都是非常常用的方法
内置加密工具类 XCodec,你想要的加密姿势都有

Get Started

使用:

1.clon

**apply from: "conf.gradle"**
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
classpath 'com.bugtags.library:bugtags-gradle:latest.integration'
**classpath 'com.github.dcendents:android-maven-gradle-plugin:1.5'
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'** // NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
} allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
} task clean(type: Delete) {
delete rootProject.buildDir
}

3.将mvp作为依赖库,在您的app module 中 添加如下依赖:

compile project(‘:mvp’)

4.在根目录的gradle文件中配置

e ‘XDroid’库到本地: 
git clone https://github.com/limedroid/XDroidMvp.git

2.拷贝conf.gradle到您的项目根目录,并修改项目gradle文件下引入: 
apply from: “conf.gradle” 
如:

allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}

5.在app.gradle文件中加

apply plugin: 'com.neenbedankt.android-apt'

dependencies中加

apt rootProject.ext.dependencies["butterknife-apt"]

重要说明

ButterKnife使用的是8..0版本,重点是 @BindView,可以去项目官网查看。
Rxlifecycle使用的是1.0版本,具体如何使用可以查看官网。
RxPermissions使用的是0..1版本,具体如何使用可以查看官网。
retrofit,具体如何使用可以查看官网。

XDroidMvp全新文档:https://github.com/limedroid/XDroidMvp/wiki

XDroidMvp 轻量级的Android MVP快速开发框架的更多相关文章

  1. 推荐一款强大的轻量级模块化WEB前端快速开发框架--UIkit

    前言 今天给大家分享一款强大的轻量级模块化WEB前端快速开发框架--UIkit 到目前(2016-06-20)为止,UIkit在github上的Forks已达到了1350个,而Stars更是达到了69 ...

  2. android的快速开发框架集合

    出自:http://blog.csdn.net/shulianghan/article/details/18046021 1.Afinal  (快速开发框架) 简介:http://www.oschin ...

  3. [转]Android项目快速开发框架探索(Mysql + OrmLite + Hessian + Sqlite)

    前言 结合之前所用的ormlite和hessian,再加上SAE已经支持JAVA,把服务端切换到JAVA,也就有了本文.使用hessian来做数据传输,ormlite来实现客户端与服务端的数据存储,极 ...

  4. 【Android】Android的快速开发框架Afinal

    Afinal简介 Afinal是一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp. 通过finalA ...

  5. android mvp高速开发框架介绍(dileber的简单介绍)

    今天我为大家介绍一款android mvp框架:dileber(https://github.com/dileber/dileber.git) 官方交流qq群:171443726 我个人qq:2971 ...

  6. android mvp高速开发框架介绍(继续dileber)

    android mvp框架:dileber(https://github.com/dileber/dileber.git) 继续为大家介绍android mvp开源框架 dileber 官方交流qq群 ...

  7. android mvp高速开发框架介绍(dileber使用之图片下载工具)

    这几天忙着工作- 今天抽时间又把框架的bug处理了一下--并且把volley的源代码改动了一下 android mvp框架:dileber(https://github.com/dileber/dil ...

  8. android mvp高速开发框架介绍(dileber使用之小工具使用)

    android mvp框架:dileber(https://github.com/dileber/dileber.git) 继续为大家介绍android mvp开源框架 dileber 官方交流qq群 ...

  9. MVP快速开发框架

    所谓MVP(Model-View-Presenter)模式.是将APP的结构分为三层: view - UI显示层 view 层主要负责: 提供UI交互 在presenter的控制下修改UI. 将业务事 ...

随机推荐

  1. SpringMVC配置环境中一般用的jar包

    配置SpringMVC需要把这些jar包加入lib目录下 下载地址,复制到地址栏.回车即可下载 http://files.cnblogs.com/files/QW-lzm/SpringMVC----. ...

  2. 【转载】Java中StringTokenizer类的作用

    StringTokenizer是一个用来分隔String的应用类,相当于VB的split函数.1.构造函数public StringTokenizer(String str)public String ...

  3. 每次rand出来都是41?说好的随机数呢?!

    rand()函数是C++标准函数库提供的随机数生成器,生成0-RAND_MAX之间的一个"伪随机"整数,理论上可以产生的最大数值为2^16-1,即32767. rand()函数不接 ...

  4. noip2010引水入城

    https://www.zybuluo.com/ysner/note/1334997 这道题fst了 题面 戳我 解析 我一开始的想法是,按照高度给第一行排序,然后贪心地选取目前到不了的,高度最高的第 ...

  5. 用 SDL2 显示一张图片

    来源: http://adolfans.github.io/sdltutorialcn/ (中文教程) http://www.willusher.io/pages/sdl2/ (英文教程) 环境:SD ...

  6. Android webkit 事件传递流程通道分析

    前言:基于android webview 上定制自己使用的可移植浏览器apk,遇到好多按键处理的问题.所以索性研究了一下keyevent 事件的传递流程. frameworks 层 keyevent ...

  7. STL - merge()

    merge用来对两个有序容器进行合并.返回合并后存入容器中的元素的下一个位置的迭代器(可以认为是超尾). merge(v1.first(),v1.end(),v2.first(),v2.end(),r ...

  8. 百度之星资格赛 1004 度度熊的午饭时光(01背包+最小序号和+字典序+有bug)

    分析 首先声明一下,我的代码有漏洞的,求大神给个正确代码 思路如下: 首先做一遍01背包记录路径并求出最大总分,令path[i][j]表示第i个物品包含在dp[j]的求值过程中.再逆序枚举money, ...

  9. vector理解一波~~~

    Vector: 头文件: #include<vector> using namespacestd; 定义: vector<类型>q;//类同于  "类型 q[];&q ...

  10. bzoj 4903: [Ctsc2017]吉夫特【lucas+状压dp】

    首先根据lucas, \[ C_n^m\%2=C_{n\%2}^{m\%2}*C_{n/2}^{m/2} \] 让这个式子的结果为计数的情况只有n&m==m,因为m的每一个为1的二进制位都需要 ...