android快速开发常见框架
Posted _ArcticOcean
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android快速开发常见框架相关的知识,希望对你有一定的参考价值。
简单总结一下在APP开发中常见的一些技术:
(1)欢迎页:利用ViewPager加载一组图片,图片可以直接本地读取,也可以从网络下载,最后一张生成按钮链接至登录页。
(2)第三方登录:QQ、友盟、ShareSdk等有提供相应的API,需要申请对应的key集成SDK。
(3)底部tab导航切换:
- 典型界面设计,FragmentTabHost(用于实现点击选项进行切换选项卡的效果)+ViewPager(左右切换当前的view,实现滑动切换的效果)+Fragment(存放不同选项的页面内容)实现底部tab切换,达到懒加载效果。
- 高仿微信6.0主界面,切换图标颜色渐变。
(4)导航栏菜单左右滑动:PagerSlidingTabStrip,可以实现导航栏字体大小和颜色的渐变特效。
(5)流行的网络请求框架:
-
android-async-http
(1) 在匿名回调中处理请求结果
(2) 在UI线程外进行http请求
(3) 文件断点上传
(4) 智能重试
(5) 默认gzip压缩
(6) 支持解析成Json格式
(7) 可将Cookies持久化到SharedPreferences -
Retrofit+okhttp
(1) 一般的get请求
(2) 一般的post请求
(3) 基于Http的文件上传
(4) 文件下载
(5) 加载图片
(6) 支持请求回调,直接返回对象、对象集合
(7) 支持session的保持 -
xUtils3.0
(1) DbUtil:Android中的orm框架,一行代码就可以进行增删改查
(2) ViewUtil:android中的ioc框架,完全注解方式就可以进行UI,资源和事件绑定,减少findViewById的麻烦;
(3) HttpUtil:支持同步,异步方式的请求;
支持大文件上传,上传大文件不会oom;
支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT请求;
(4) BitmapUtil:加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象 -
Afinal框架:
(1) FinalDB:android中的orm框架,使用了线程池对sqlite进行操作。
(2) FinalActivity:android中的ioc框架,完全注解方式就可以进行UI绑定和事件绑定。无需findViewById和setClickListener等。
(3) FinalHttp:通过httpclient进行封装http数据请求,支持ajax方式加载,支持下载、上传文件功能。
(4) FinalBitmap:可以配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等
(6)数据库存储:
-
greenDAO
一个轻量级的快速的ORM方案。 操作SQLite 数据库。 -
ActiveAndroid
简单地通过如save()和delete()等方法来做到增删改查等操作 -
DbFlow
(1) 无缝支持多个数据库;
(2) 使用annotation processing提高速度;
(3) ModelContainer类库可以直接解析像JSON这样的数据;
(4) 增加灵活性的丰富接口。
(7)图片缓存:
-
Android-Universal-Image-Loader
(1) 个性的ImageLoader配置
(2) 各式缓存方式任你选择,DiskCache、MemoryCache
(3) 网络图片获取想停就停 -
picasso
(1) 在adapter中需要取消已经不在视野范围的ImageView图片资源的加载,否则会导致图片错位,Picasso已经解决了这个问题
(2) 使用复杂的图片压缩转换来尽可能的减少内存消耗
(3) 自带内存和硬盘二级缓存功能 -
ImageCache
(1) 使用简单
(2) 轻松获取及预取新图片
(3) 包含二级缓存
(4) 可方便的保存及初始化恢复数据
(5) 支持文件sd卡保存及自定义文件名规则
(8)分享功能:微信分享、QQ分享、新浪微博分享、社会化分享等
(10)第三方即时通讯:网易云信、环信即时通讯云、融云SDK等
(11)二维码扫描:目前使用较多的Google一个开源的扫码框架ZXing,可以进行二维码、条形码扫描
**(12)json数据解析:**json、fastJson(阿里出品,号称最快的解析框架)、gson(将字段转为model的形式)
(13)图片选择器:
-
Android-Ultra-Photo-Selector,支持选择多张图片、浏览设备上所有包含图片的文件夹、预览选择的图片并且支持缩放。
-
GalleryFinal,一个图片选择(单选/多选)、拍照、编辑、裁剪及旋转为一身的图片选择器。
(14)侧滑菜单框架:
-
DrawerLayout,分为侧边菜单和主内容区两部分,侧边菜单可以根据手势展开与隐藏(drawerLayout自身特性),主内容区的内容可以随着菜单的点击而变化
-
SlidingMenu,开源的Android开发类库,它可以让开发者在自己的Android App中非常便捷地创建侧滑菜单
-
LDrawer,使用material design动画的侧滑效果
-
Android-LollipopShowcase,类似Android L设计效果
(15)下拉加载控件:
-
PullDownListView,仿微信首页的下拉效果
-
Taurus,有动画的下拉刷新控件
-
Android-PullToRefresh,之前最常见的下拉刷新,上拉加载控件,在列表或者视图的顶部或者底部拖动可以刷新数据和页面
-
SwipeRefreshLayout,Google推出的用于下拉刷新的控件
-
android-PullRefreshLayout,酷炫的下拉回弹效果
(16)日历组件:
-
Android-Week-View,能够新建日程任务的日历控件
-
android-times-square,square出品的日期选择组件
-
android-betterpickers,时间、日期类库
-
Caldroid,以月为单位展示日期的日历控件,通过左右滑动切换月份
以上是关于android快速开发常见框架的主要内容,如果未能解决你的问题,请参考以下文章
腾讯技术团队最新出品,Android Framework系统框架底层原理解密