9款Android经常使用的高速开发框架

摘要:
使用混淆工具混淆后仍可正常工作;眼下支持经常使用的20种事件绑定,參见ViewCommonEventListener类和包com.lidroid.xutils.view.annotation.event。对其进行检功能:ThinkAndroid是一个免费的开源的、简易的、遵循Apache2开源协议公布的Android开发框架。其开发宗旨是简单、高速的进行Android应用程序的开发,包括Androidmvc、简易sqliteorm、ioc模块、封装Androidhttpclitent的http模块,具有高速构建文件缓存功能。

1、Afinal框架


项目地址:https://github.com/yangfuhai/afinal

项目地址:http://www.oschina.net/p/afinal
主要有四大模块:
(1) 数据库模块:android中的orm框架,使用了线程池对sqlite进行操作。

(2) 注解模块:android中的ioc框架,全然注解方式就能够进行UI绑定和事件绑定。无需findViewById和setClickListener等。
(3) 网络模块:通过httpclient进行封装http数据请求。支持ajax方式载入,支持下载、上传文件功能。
(4) 图片缓存模块:通过FinalBitmap,imageview载入bitmap的时候无需考虑bitmap载入过程中出现的oom和android容器高速滑动时候出现的图片错位等现象。

FinalBitmap能够配置线程载入线程数量。缓存大小,缓存路径,载入显示动画等。FinalBitmap的内存管理使用lru算法,
没有使用弱引用(android2.3以后google已经不建议使用弱引用。android2.3后强行回收软引用和弱引用,详情查看android官方文档)。
更好的管理bitmap内存。

FinalBitmap能够自己定义下载器,用来扩展其它协议显示网络图片,比方ftp等。

同一时候能够自己定义bitmap显示器。
在imageview显示图片的时候播放动画等(默认是渐变动画显示)。

2、xUtils框架
项目地址:http://www.oschina.net/p/xutils
项目地址:https://github.com/wyouflf/xUtils
主要有四大模块:
(1) 数据库模块:android中的orm框架,一行代码就能够进行增删改查。
支持事务。默认关闭;
可通过注解自己定义表名,列名,外键,唯一性约束。NOT NULL约束,CHECK约束等(须要混淆的时候请注解表名和列名)。
支持绑定外键,保存实体时外键关联实体自己主动保存或更新;
自己主动载入外键关联实体,支持延时载入;
支持链式表达查询,更直观的查询语义,參考以下的介绍或sample中的样例。

(2) 注解模块:android中的ioc框架,全然注解方式就能够进行UI,资源和事件绑定。
新的事件绑定方式。使用混淆工具混淆后仍可正常工作;
眼下支持经常使用的20种事件绑定,參见ViewCommonEventListener类和包com.lidroid.xutils.view.annotation.event。
(3) 网络模块:支持同步。异步方式的请求;
支持大文件上传,上传大文件不会oom。
支持GET。POST。PUT,MOVE,COPY。DELETE,HEAD,OPTIONS。TRACE,CONNECT请求;
下载支持301/302重定向。支持设置是否依据Content-Disposition重命名下载的文件。
返回文本内容的请求(默认仅仅启用了GET请求)支持缓存,可设置默认过期时间和针对当前请求的过期时间。
(4) 图片缓存模块:载入bitmap的时候无需考虑bitmap载入过程中出现的oom和android容器高速滑动时候出现的图片错位等现象;
支持载入网络图片和本地图片;
内存管理使用lru算法。更好的管理bitmap内存。
可配置线程载入线程数量,缓存大小,缓存路径,载入显示动画等...

3、ThinkAndroid
项目地址:http://www.oschina.net/p/thinkandroid
项目地址:https://github.com/white-cat/ThinkAndroid
主要有下面模块:
(1) MVC模块:实现视图与模型的分离。
(2) ioc模块:android中的ioc模块,全然注解方式就能够进行UI绑定、res中的资源的读取、以及对象的初始化。

(3) 数据库模块:android中的orm框架。使用了线程池对sqlite进行操作。

(4) http模块:通过httpclient进行封装http数据请求,支持异步及同步方式载入。
(5) 缓存模块:通过简单的配置及设计能够非常好的实现缓存。对缓存能够任意的配置
(6) 图片缓存模块:imageview载入图片的时候无需考虑图片载入过程中出现的oom和android容器高速滑动时候出现的图片错位等现象。
(7) 配置器模块:能够对简易的实现配对配置的操作。眼下配置文件能够支持Preference、Properties对配置进行存取。

(8) 日志打印模块:能够较快的轻易的是实现日志打印,支持日志打印的扩展,眼下支持对sdcard写入本地打印、以及控制台打印
(9) 下载器模块:能够简单的实现多线程下载、后台下载、断点续传、对下载进行控制、如開始、暂停、删除等等。
(10) 网络状态检測模块:当网络状态改变时。对其进行检

功 能:ThinkAndroid是一个免费的开源的、简易的、遵循Apache2开源协议公布的Android开发框架。其开发宗旨是简单、高速的进行 Android应用程序的开发,包括Android mvc、简易sqlite orm、ioc模块、封装Android httpclitent的http模块, 具有高速构建文件缓存功能。无需考虑缓存文件的格式,都能够很轻松的实现缓存,它还基于文件缓存模块实现了图片缓存功能, 在android中载入的图片的时候,对oom的问题。和对载入图片错位的问题都轻易解决。他还包括了一个手机开发中常常应用的有用工具类, 如日志管理,配置文件管理,android下载器模块,网络切换检測等等工具。

开发人员QQ群:230206891

长处:功能看起来比較完好。

缺点:这个是个人写的,从2013年就停止维护了,没有项目文档。

4、LoonAndroid
项目地址:https://github.com/gdpancheng/LoonAndroid
主要有下面模块:
(1) 自己主动注入框架(仅仅须要继承框架内的application既可)
(2) 图片载入框架(多重缓存,自己主动回收,最大限度保证内存的安全性)
(3) 网络请求模块(继承了基本上如今全部的http请求)
(4) eventbus(集成一个开源的框架)
(5) 验证框架(集成开源框架)
(6) json解析(支持解析成集合或者对象)
(7) 数据库(不知道是哪位写的 忘记了)
(8) 多线程断点下载(自己主动推断是否支持多线程,推断是否是重定向)
(9) 自己主动更新模块
(10) 一系列工具类


5.UltimateAndroid
UltimateAndroid是一套集成了很多现有优秀的Android开源类库并将之组合成一个总体的Android高速开发框架。
github地址:https://github.com/cymcsg/UltimateAndroid
框架眼下主要包括的功能有View Injection,ORM,异步网络请求和图片载入,自己主动化脚本測试,磁盘LRU等功能.同一时候提供了类似于TripleDes、Webview高速设置、Md5处理、String处理,Https处理等经常使用工具类,还有多种UI控件效果。而且这些功能正在逐步添加中。
本套教程主要是介绍UltimateAndroid框架的使用,同一时候会採用一个项目作为样例来讲述怎样更好的使用UltimateAndroid,也是一套Android高速开发的教程
文件夹:
一、部署UltimateAndroid框架(Eclipse版和AndroidStudio版)
二、导入DemoOfUi,实现多种UI效果
三、例程:项目介绍和初始化
四、启动效果处理
五、数据库结构处理
六、
...未完待续(本文会不断更新链接地址)
1.框架核心模块包括视图注入,ORM,异步的Http与图像请求等内容。
2.UltimateAndroid 使用了很多优秀的开源框架
3.眼下的项目结构还未採用Gradle,可能在未来某一时间会採用
眼下採用的核心开源类库有:
1.视图注入Butter Knife
2.异步网络请求 Asynchronous Http Client for Android.
3.异步图片载入Universal Image Loader for Android
4.ORM一:greenDAO
5.ORM二:ActiveAndroid


项目地址:http://androidannotations.org/

功能:全然注解框架,一切皆为注解:声明控件,绑定控件。设置监听,setcontentview,长按事件,异步线程,所有通过注解实现。

长处:全然的注解,使开发起来更加便利,程序猿写的代码也更少。

缺点:文档是全英文的加上功能比較少没有详细研究,因为一切都是注解。感觉效率不高,只是依据官方介绍说并非使用的反射载入。所以效率比一般注解高非常多。

项目地址:https://github.com/kymjs/KJFrameForAndroid

功 能:一个android的orm 和 ioc 框架。同一时候封装了android中的Bitmap与Http操作的框架,使其更加简单易用。 KJFrameForAndroid开发框架的设计思想是通过封装Android原生SDK中复杂的复杂操作而达到简化Android应用级开发,终于实 现高速而又安全的开发APP。总共分为五大模 块:UILibrary,UtilsLibrary。HttpLibrary。BitmapLibrary,DBLibrary。

开发人员QQ群:257053751

长处:功能比較全面,代码效率非常高,文档完好,有项目demo,借鉴了非常多大型框架经验。

缺点:框架的Activity部分最低。项目交流平台没多少人说话(难道大神都是不说话的?)

项目地址:http://git.oschina.net/kymjs/KJFrameForAndroid#git-readme

github项目地址:
https://github.com/kymjs/KJFrameForAndroid
备用项目地址:
http://git.oschina.net/kymjs/KJFrameForAndroid

KJFrameForAndroid又叫KJLibrary,是一个android的orm 和 ioc 框架。同一时候封装了android中的Bitmap与Http操作的框架,使其更加简单易用;
KJFrameForAndroid的设计思想是通过封装Android原生SDK中复杂的复杂操作而达到简化Android应用级开发。终于实现高速而又安全的开发APP。我们提倡用最少的代码,完毕最多的操作,用最高的效率。完毕最复杂的功能。
同一时候。KJFrameForAndroid是免费的、开源的、简易的、遵循Apache Licence 2.0开源协议公布的android应用开发框架,总共分为五大模 块:UILibrary,UtilsLibrary。HttpLibrary。BitmapLibrary,DBLibrary。


8.AndroidCommon
包括一组开发 Android 程序经常使用的库。包括 ImageCache、DropDownListView、DownloadManager 和静默安装 APK 等等。


功能模块:

1. 缓存(图片缓存、预取缓存、网络缓存)
---------------------------------------------------------------------------------------
2. 公共View(下拉及底部载入很多其它ListView、底部载入很多其它ScrollView、滑动一页Gallery)
---------------------------------------------------------------------------------------
3. Android经常使用工具类(网络、下载、Android资源操作、shell、文件、Json、随机数、Collection等等)


长处:Android项目的通用工具类的集合

Github地址:


Demo地址:


文档介绍:


9.andbase

andbase能做什么?

项目地址:https://github.com/zhaoqp2010/andbase/

项目地址:http://www.amsoft.cn/andbase.html

1.andbase中包括了大量的开发经常使用手段。

如网络下载,多线程与线程池的管理。数据库ORM,图片缓存管理,图片文件下载上传,Http请求工具。SOAP工具类,异步Task,经常使用工具类(字符串,日期,文件处理。图片处理工具类等),可以使您的应用在团队开发中降低冗余代码,非常大的提高了代码的维护性与开发高效性,能非常好的规避因为开发疏忽而导致常犯的错误。

2.andbase封装了大量的经常使用控件。

如list分页。grid分页。下拉刷新,进度框。图片轮播,表格。多线程下载器。側边栏,图片上传。轮子选择,图表,Tab滑动。日历选择器等。

3.强大的AbActivity。您没有理由不继承它。

继承它你可以获得一个简单强大可设置的操作栏,以及一系列的简单调用。如弹出框,提示框,进度框,副操作栏等。

4.提供效率较高图片缓存管理策略,使内存大幅度节省。利用率提高,效率提高。

程序中要管理大量的图片资源,andbase提供简单的方法。几步完毕下载与显示,并支持缩放,裁剪,缓存功能,OOM不在有。

5.封装了大量常见工具类。

包含日期。字符。文件。图片。数学。View万能适配工具类等各种处理函数, 多而全。

6.用andbase大量降低handler的使用,而採用回调函数,代码更整洁。

handler会产生大量代码。而且不好维护,andbase对handler进行了封装,你会发现用了andbase基本代码中不会再有大量的handler推断语句。

7.简单轻量支持注解自己主动建表的ORM框架(支持一/多对多的关联操作)。

写sql,建表,工作量大,andbase提供更傻瓜异步增删改查工具类,数据库在内置卡和外置卡都能够。

8.异步请求http框架。网络请求标准化。支持文件上传下载,get,post。进度显示。

包括了异步与http请求的工具类,SOAP请求工具类,简单有用。



免责声明:文章转载自《9款Android经常使用的高速开发框架》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Perforce服务器的备份还原ElementUI】日期选择器时间选择范围限制,只能选今天之前的时间,或者是只能选今天之后的时间。今天是否可以选。限制结束日期不能大于开始日期下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

全面解决Html页面缓存的问题

页面缓存的问题可能大家都遇到过,很多功能做完没起效果,那么怎么解决这个问题呢?这里给出我的使用的解决方法 对于一个html页面,缓存分3部分,一个是页面内容,一个是css样式,一个是JS文件1、页面内容<meta http-equiv="Expires" content="0"><meta http-equiv="Pragma" cont...

Android Studio快捷键——编辑篇

Android Studio是官方推出的Android开发IDE,本系列讲解Android Studio中常用的快捷键,本文是该系列的第一篇,讲解的内容是与编辑代码相关的快捷键。 本文所讲快捷键基于Android Studio2.3.3 windows版本。 本文所记录的快捷键皆亲自实践,全部可用。 编辑 编辑是IDE的核心功能,Android Studi...

安卓手机清缓存方式

1,安卓手机清除缓存访问:debugx5.qq.com 2, 安卓手机清除缓存三步走:1、点击 debugtbs.qq.com 后退出;2、点击 debugmm.qq.com/?forcex5=true 后退出;3、访问 debugx5.qq.com,在这个页面清除缓存;...

nodejs API

1、querystring参数处理 序列化 > querystring.stringify({'name':'scott',course:['jade','node'],from:''}) 'name=scott&course=jade&course=node&from=' > querystring.stringify...

android Service介绍

一、简介 android中service(服务)运行于后台,没有界面。和其他组件一样,service也运行在主线程中,因此不能用它来做耗时的请求或者动作。可以在服务中开启线程,在线程中做耗时操作。可以启动一个服务service来播放音乐,或者记录地理信息位置的改变,或者启动一个服务来运行并一直监听某种动作。 二、Service的种类 服务一般分为两种: 1...

React Native环境搭建

最近组里老大开始招RN的一些开发人员,也从最近的一些动向表明将来的功能有可能会由RN来编写了,而对于我是从事纯Native的android开发工作已经N多年了,对于RN组里面也有一些同事的技术分享,说实话对它是非常之抗拒的,觉着这玩意不会就像几年前出的PhoneGap那样鸡肋的技术吧,也就是用Webview去加载h5页面嘛,不可能代替Native的,直到最...