1、AndBase框架


  项目地址:


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


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


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


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


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


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


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


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


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


  包括日期,字符,文件,图片等各种处理函数, 多而全。


  6.用andbase大量减少handler的使用,而采用回调函数,代码更整洁。


  handler会产生大量代码,并且不好维护,andbase对handler进行了封装。


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


  写sql,建表,工作量大,andbase提供更傻瓜异步增删改查工具类。


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


  包含了异步与http请求的工具类,实用。


  2、XUtil框架


  项目地址:


  主要有四大模块:


  (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框架


  项目地址:


  主要有以下模块:


  (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) 网络状态检测模块:当网络状态改变时,对其进行检


  4、LoonAndroid


  项目地址:


  主要有以下模块:


  (1)  自动注入框架(只需要继承框架内的application既可)


  (2)  图片加载框架(多重缓存,自动回收,最大限度保证内存的安全性)


  (3)  网络请求模块(继承了基本上现在所有的http请求)


  (4)  eventbus(集成一个开源的框架)


  (5)  验证框架(集成开源框架)


  (6)  json解析(支持解析成集合或者对象)


  (7)  数据库(不知道是哪位写的 忘记了)


  (8)  多线程断点下载(自动判断是否支持多线程,判断是否是重定向)


  (9)  自动更新模块


  (10) 一系列工具类


  5、volley


  项目地址 :


  (1)  JSON,图像等的异步下载;


  (2)  网络请求的排序(scheduling)


  (3)  网络请求的优先级处理


  (4)  缓存


  (5)  多级别取消请求


  (6)  和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)


  6、android-async-http


  项目地址:


  文档介绍:


  (1) 在匿名回调中处理请求结果


  (2) 在UI线程外进行http请求


  (3) 文件断点上传


  (4) 智能重试


  (5) 默认gzip压缩


  (6) 支持解析成Json格式


  (7) 可将Cookies持久化到SharedPreferences


  7、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显示图片的时候播放动画等(默认是渐变动画显示)。


  总结框架结构,


  ImageLoader框架(第8大框架)


  UniversalImageLoader是用于加载图片的一个开源项目,在其项目介绍中是这么写的,


  支持多线程图片加载


  提供丰富的细节配置,比如线程池大小,HTPP请求项,内存和磁盘缓存,图片显示时的参数配置等等;


  提供双缓存


  支持加载过程的监听;


  提供图片的个性化显示配置接口;


  Widget支持(这个,个人觉得没必要写进来,不过尊重原文)


  其他类似的项目也有很多,但这个作为github上著名的开源项目被广泛使用。第三方的包虽然好用省力,可以有效避免重复造轮子,但是却隐藏了一些开发上的细节,如果不关注其内部实现,那么将不利于开发人员掌握核心技术,当然也谈不上更好的使用它,计划分析项目的集成使用和低层实现。


  开源框架android-async-http(第9大框架)


  官网:


  Android-async-http开源框架可以是我们轻松的获取网络数据或者向服务器发送数据,使用起来也简单,详细请看官网:


  到官网下载zip包,解压,里面有完整的代码和各种版本的jar包和demo,源码在library里面,jar包在releases里面。项目更新速度很快,老版本的回调是一个普通类,最新版是一个接口。


  KJFrameForAndroid框架(第10大框架)


  参考:


  KJFrameForAndroid是一款基于Android的ORM和


  IOC应用开发框架,封装了很多Android开发中常用的功能,包括Android中对Bitmap的操作类库。KJFrameForAndroid的设计非常精简,利用KJFrameForAndroid,我们可以用最少的代码完成很多丰富的Android功能应用,为Android开发者节省许多不必要的开发时间。


  KJFrameForAndroid总共分为五大模块:UILibrary,UtilsLibrary,HttpLibrary,BitmapLibrary,DBLibrary.


  Android-async-http开源框架可以是我们轻松的获取网络数据或者向服务器发送数据,使用起来也简单,详细请看官网:


  到官网下载zip包,解压,里面有完整的代码和各种版本的jar包和demo,源码在library里面,jar包在releases里面。项目更新速度很快,老版本的回调是一个普通类,最新版是一个接口。

相关文章

9个鲜为人知的HTML功能 小白怎么学习HTML5?新手入门必看 阿里巴巴常用的12个后端开发工具 sharepoint搭建文档服务器,SharePoint?Server教程 语义化标签与HTML5新增的布局标签 vector教程:如何进行项目 JetBrains PhpStorm v2021.2.0中文激活版 HTML5教程之新元素 前端基础入门:HTML5基础语法与标签 HTML5——SVG基础入门 android是前端还是后端 嵌入式开发要学哪些技能? 使用fiddler对手机APP进行抓包 HTML5薪资正一路飙升 如何才能学好HTML5开发 零基础如何迅速学习前端? html5中怎么利用canvas元素创建画布 实现html5移动端自适应布局的方法分享 HTML5移动应用开发 最佳HTML5应用开发工具有哪些? HTML5 移动页面自适应手机屏幕四类方法 html5手机网站常用的9个CSS属性 什么是web前端开发标准 Android开发用过的十大框架 Android混合开发,html5自己主动更新爬过的坑 HTML5中的移动开发框架有哪些? 分享5个主流的HTML5开发工具 HTML5开发培训教程学习之动效制作 网页开发HTML5 快速开发基于 HTML5 网络拓扑图应用 如何零基础入门前端开发? html5零基础入门学习教程(零基础学员必看) jquery删除ajax请求的方法 jquery中ajax中的参数,jquery中的ajax参数 jQuery AJAX 方法success()后台传来的4种数据详解 jquery中ajax常用的方法,jQuery ajax框架常用方法总结 jQuery AJAX中readyState与status的区别与联系 jquery ajax.then,神奇的then方法 jQuery validate+artdialog+jquery form实现弹出表单思路详解 ajax用来做什么的,jQuery是什么? java jquery ajax视频,【Ajax】之jQuery中的Ajax jquery中ajax应用之通用ajax()函数的实例 BootStrop前端框架入门教程详解 jQuery WEUI Select jquery是什么意思?jquery和js的区别是什么? 巧用案例学习jQuery框架三种事件绑定方式 jQuery 基础知识总结 引入JQuery.min.js文件 几款常用的高质量web前端框架 Jquery和bootstrap有哪些区别 easyui 验证 ajax提交表单提交表单提交