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分享新浪微博分享社会化分享

(9)支付功能:支付宝支付微信支付ping++

(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快速开发常见框架的主要内容,如果未能解决你的问题,请参考以下文章

腾讯技术团队最新出品,Android Framework系统框架底层原理解密

又一个UI相关的前端框架腾讯出品

Android Flutter:手把手教你使用所有常见Widget

Android--快速开发框架 afinal

PHP 的 MVC 框架原理及常见框架学习

腾讯出品的一个超棒的 Android UI 库