XDroidMvp 轻量级的Android MVP快速开发框架
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快速开发框架的更多相关文章
- 推荐一款强大的轻量级模块化WEB前端快速开发框架--UIkit
前言 今天给大家分享一款强大的轻量级模块化WEB前端快速开发框架--UIkit 到目前(2016-06-20)为止,UIkit在github上的Forks已达到了1350个,而Stars更是达到了69 ...
- android的快速开发框架集合
出自:http://blog.csdn.net/shulianghan/article/details/18046021 1.Afinal (快速开发框架) 简介:http://www.oschin ...
- [转]Android项目快速开发框架探索(Mysql + OrmLite + Hessian + Sqlite)
前言 结合之前所用的ormlite和hessian,再加上SAE已经支持JAVA,把服务端切换到JAVA,也就有了本文.使用hessian来做数据传输,ormlite来实现客户端与服务端的数据存储,极 ...
- 【Android】Android的快速开发框架Afinal
Afinal简介 Afinal是一个android的ioc,orm框架,内置了四大模块功能:FinalAcitivity,FinalBitmap,FinalDb,FinalHttp. 通过finalA ...
- android mvp高速开发框架介绍(dileber的简单介绍)
今天我为大家介绍一款android mvp框架:dileber(https://github.com/dileber/dileber.git) 官方交流qq群:171443726 我个人qq:2971 ...
- android mvp高速开发框架介绍(继续dileber)
android mvp框架:dileber(https://github.com/dileber/dileber.git) 继续为大家介绍android mvp开源框架 dileber 官方交流qq群 ...
- android mvp高速开发框架介绍(dileber使用之图片下载工具)
这几天忙着工作- 今天抽时间又把框架的bug处理了一下--并且把volley的源代码改动了一下 android mvp框架:dileber(https://github.com/dileber/dil ...
- android mvp高速开发框架介绍(dileber使用之小工具使用)
android mvp框架:dileber(https://github.com/dileber/dileber.git) 继续为大家介绍android mvp开源框架 dileber 官方交流qq群 ...
- MVP快速开发框架
所谓MVP(Model-View-Presenter)模式.是将APP的结构分为三层: view - UI显示层 view 层主要负责: 提供UI交互 在presenter的控制下修改UI. 将业务事 ...
随机推荐
- POJ3252 Round Numbers —— 数位DP
题目链接:http://poj.org/problem?id=3252 Round Numbers Time Limit: 2000MS Memory Limit: 65536K Total Su ...
- svn服务器搭建与迁移
2016-11-21更新: 今天被svn的钩子搞了半天,网上找解决方法都无效,下午被我试出来了,特此记录. 在svn的钩子中可以使用update来更新配置文件,比如ansible的,puppet的,具 ...
- Lesson one of python
Test1:Use the powershell to output the contents print "Hello World!" print "Hello Aga ...
- 一步一步学Silverlight 2系列(19):如何在Silverlight中与HTML DOM交互(上)
概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...
- [原创]java调用PageOffice生成word
一.在开发OA办公或与文档相关的Web系统中,难免会遇到动态生成word文档的需求,为了解决工作中遇到导出word文档的需求,前一段时间上网找了一些资料,在word导出这方面有很多工具可以使用,jac ...
- 机器学习 Hidden Markov Models 3
Viterbi Algorithm 前面我们提到过,HMM的第二类问题是利用HMM模型和可观察序列寻找最有可能生成该观察序列的隐藏变量的序列.简单来说,第一类问题是通过模型计算生成观察序列的概率,而第 ...
- BZOJ1453: [WC2005]Dface双面棋盘
离线LCT维护MST,和3082的方法一样.然而比较码农,适合颓废的时候写. PS:线段树分治要好写得多,LCT比较自娱自乐. #include<bits/stdc++.h> using ...
- limit的用法
limit子句可以用于强制select语句返回指定的记录数.limit接受一个或两个数字参数,参数必须是整数常量.如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最 ...
- python单元测试之unittest框架使用总结
一.什么是单元测试 单元测试是用来对一个模块.一个函数或者一个类来进行正确性检验的测试工作. 比如对于函数abs(),我们可以编写的测试用例为: (1)输入正数,比如1.1.2.0.99,期待返回值与 ...
- jQuery中排除指定元素,同时选择剩下的所有元素
场景:某页面用了js延时加载技术处理所有图片,以改善用户体验,但是有几个图片不想延时加载,要求把它们单独挑出来. 研究了一下jQuery的API文档,搞掂了,jQuery真的很方便,贴在这里备份: 1 ...