一、网络库

  1. Retrofit

    Retrofit 是 Square 公司研发的网络请求库,也是目前 android 最流行的 HttpClient 库之一,越来越多的公司开始使用这个请求库,并且可以完美结合 RxJava,就像官网介绍的一样,Retrofit 是一款类型安全的网络框架,基于 HTTP 协议,服务于 Android 和 Java 语言
    GitHub 地址:Retrofit GitHub 地址https://github.com/square/retrofit

  2. okhttp

    同样 okhttp 也是 Square 公司研发的网络请求库,是一款基于 HTTP 和 HTTP2.0 协议的网络框架,服务于 Java 和 Android 客户端,okhttp 以 21K 的 stars 排在 GitHub 中 android 子标题的第二名,很多公司都在使用,从 Retrofit 2.0 开始内置 okhttp 框架,Retrofit 专注封装接口完成业务需求,okhttp 专注网络请求的高效安全
    GitHub 地址:okhttp GitHub 地址https://github.com/square/okhttp

  3. volley

    Google 的 Andorid 开发团队也意识到有必要将 HTTP 的通信操作再进行简化,于是在 2013 年度的 Google I/O 大会上推出了一个新的网络通信框架—Volley,Volley 在性能方面进行了大幅度的调整,它是设计目标是适合进行数据量不大,但通信频繁的网络操作,对于数据量大的网络操作就会表现糟糕
    GitHub 地址:volley GitHub 地址https://github.com/google/volley

网络方面的库我们就介绍上面主要用到的 3 个

二、图片加载库

  在 Android 设备上面,快速高效的显示图片是极为重要的,在过去的很长时间里,我们在如何高效的存储图像这方面遇到了很多问题,例如图片太大,但是内存却比较小,但是越来越多优秀开源框架的使用解决了我们这方面的问题,接下来我们来看看这些优秀的开源框架
  1. glide

     在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 glide 的图片加载框架,作者是 bumptech 这个库被广泛的应用在 Google 开源的项目中,包括 2014 年 Google  I/O 大会上发布的官方 App

    GitHub 地址:Glide GitHub 地址https://github.com/bumptech/glide

  2. fresco

    一款管理图片内存的方案,是目前最强大的图片加载框架之一,facebook 的出身证明了它不是重复的制造轮子,在管理图片的内存上以及渐进式加载、加载 gif 都具有独有特性
    GitHub 地址:Fresco GitHub 地址https://github.com/facebook/fresco

  3. picasso

    非常强大的图片下载、缓存框架,picasso 更强调的是图片的下载,更重要的是这也是 square 团队的作品,想必提到 square 团队,它出片的东西我们还是非常的放心使用
    GitHub 地址:picasso GitHub 地址https://github.com/square/picasso

  4. Android-Universal-Image-Loader

    看到这个,想必有一定经验的 Android 开发者都会非常的熟悉,曾经的图片加载之王当之无愧,15.4k 的 stars 足以证明它的热门,与 glide 不同的是 UIL 提供了大量的配置方式,图片加载状态的回调,加载动画等,以及提供了移动端图片加载框架的缓存思路,三级缓存策略等
    GitHub 地址:UIL GitHub 地址https://github.com/nostra13/Android-Universal-Image-Loader

  5. PhotoView

    一款 ImageView 展示框架,支持缩放,响应手势,位于图片排行榜的第五位,PhotoView 与上面不同的是图片的展示功能,可以实现类似微信头像的放大功能,还有就是很多 App 的图片显示响应手势按压式如何是现实的,这里 PhotoView 将都可以轻松实现
    GitHub 地址:PhotoView GitHub 地址https://github.com/chrisbanes/PhotoView

  6. CircleImageView

    圆角 ImageView,在我们的 App 中这个想必是太常见了,也许我们可以有无数种展示圆角图片的方法,但是 CircleImageView 绝对是我们在开发时需要优先考虑的,如果你还不知道 CircleImageView,那么你需要赶快去体验它在处理圆角图片时的强大了,相信你肯定会觉得和 CircleImageView 相见恨晚,需要注意的是这个并不是图片加载库,暂且归类放在这里
    GitHub 地址:CircleImageView GitHub 地址https://github.com/hdodenhof/CircleImageView

7.Sketch 是 Android 上一款强大且全面的图片加载器,除了图片加载的必备功能外,还支持 GIF,手势缩放、分块显示超大图片、自动纠正图片方向、显示视频缩略图等功能
GitHub 地址 : https://github.com/panpf/sketch
三、UI

  1. material-dialogs

    是一款自定义View框架,如多你还是一个自定义 View 的新人,对 Dialog 使用还有点生疏,那么通过使用 material-dialogs 可以提升你的 Dilaog 使用能力
    GitHub 地址:material-dialogs GitHub 地址https://github.com/afollestad/material-dialogs

  2. flexbox-layout

    是一款弹性伸缩布局,FlexboxLayout 作为 LinearLayout 和 RelativeLayout 的替代者,值得大家在项目开发中去尝试使用,毕竟是 Google 出品

    GitHub 地址:flexbox-layout GitHub 地址https://github.com/google/flexbox-layout

  3. AndroidSwipeLayout

    非常强大的滑动式布局,滑动删除是我们 app 中的常见需求,商品详情的上下滑动需求在实际开发中我们也是经常遇到,AndroidSwipeLayout 在 GitHub 上有 8300 个 stars,证明还是值得使用
    GitHub 地址:AndroidSwipeLayout GitHub 地址https://github.com/daimajia/AndroidSwipeLayout

  4. BaseRecyclerViewAdapterHelper

强大的通用 RecyclerView 适配器,在 GitHub Android 适配器排行榜第一
GitHub 地址:BaseRecyclerViewAdapterHelper GitHub 地址https://github.com/CymChad/BaseRecyclerViewAdapterHelper

  1. MaterialDrawer

强大的材料风格的抽屉框架,非常灵活,易于使用
GitHub 地址:MaterialDrawer GitHub 地址https://github.com/mikepenz/MaterialDrawer

  1. Android-ObservableScrollView

一款让视图滑动更具有视觉效果的滑动式框架,在 GitHub 上提供了 12 种滑动效果,可以用来提升 App 的滑动体验
GitHub 地址:Android-ObservableScrollView GitHub 地址https://github.com/ksoichiro/Android-ObservableScrollView

  1. AppIntro

    一款提供快速制作欢迎页的框架,在国内的 App 开发中,ViewPager 开发 App 的欢迎页已经是标配的需求,但是 AppIntro 也是绝对值得你一看
    GitHub 地址:AppIntro GitHub 地址https://github.com/apl-devs/AppIntro

  2. ViewPagerIndicator
    一款基于 ViewPager 的页面指示器开源框架,作者是 Android 大神 JakeWharton,只是已经很长时间没有更新了,大家可以参考使用
    GitHub 地址:ViewPagerIndicator GitHub 地址https://github.com/JakeWharton/ViewPagerIndicator
    好了 UI 相关的库就介绍这么多,以后发现好用的会添加进来,方便查阅

四、动画

  1. lottie-android

    动画类框架排行榜第一名,一款可以在 Android 端快速展示 Adobe Afeter Effect(AE) 工具所做动画的框架,利用 json 文 件快速实现动画效果是它最大的便利,而这个 json 文件也是由 Adobe 提供的 AE 工具制作的,在 AE 中装一个 Bodymovin 的插件,使用这个插件最终将动画效果生成 json 文件,这个 json 文件即可由 LottieAnimationView 解析并生成绚丽的动画效果,而且它还支持跨平台
    GitHub 地址:lottie-android GitHub 地址https://github.com/airbnb/lottie-android

  2. Material-Animations

一款提供场景转换过渡能力的动画框架,与 lottie-android 不同的是,Material-Animations 提供的是场景切换的动画效果
GitHub 地址:Material-Animations GitHub 地址https://github.com/lgvalle/Material-Animations

  1. AndroidViewAnimations

一款提供可爱动画集的动画框架,在 lottie-android 和 Material-Animations 两个动画框架霸主之后排名第三,可见也是非常厉害
GitHub 地址:AndoridViewAnimations GitHub 地址https://github.com/daimajia/AndroidViewAnimations

  1. recyclerview-animators

为 recyclerview 提供扩展动画的框架,recyclerview 已经推出了很长时间,如果你还在使用 ListView,那就说明你老了
GitHub 地址:recyclerview-animators GitHub 地址https://github.com/wasabeef/recyclerview-animators

五、json 解析框架

  1. fastjson

一款基于 json 解析、生成的框架,是阿里出品,这就保证了代码的质量,在网络请求时使用较多,值得尝试
GitHub 地址:fastjson GitHub 地址https://github.com/alibaba/fastjson

六、内存泄露检测

  1. leakcanary

    一款内存检测框架,服务于 Java 和 Andorid 客户端,方便简洁是 leakcanary 最大的特点,只需要在应用的 apllication 中集成,就可以直接使用它,15.9k 的 stars 足够说明它的厉害,最关键是是,它也是 square 团队的作品,就这一条,不用说相信大家也都明白
    GitHub 地址:leakcanary GitHub 地址https://github.com/square/leakcanary

七、页面路由

  1. ARouter

    一款提供服务、页面跳转的路由框架,由阿里出品,该框架提供:从外部 URL 映射到内部页面、跨模块的页面跳转(模块化必备,页面解耦),拦截跳转过程等能力,绝对是一个企业级的开发框架
    GitHub 地址:ARouter GitHub 地址https://github.com/alibaba/ARouter

八、数据库框架

  1. realm-java

Realm 是一款专门为移动端打造的数据库框架,比普通的数据库更快,力压 greenDAO
GitHub 地址:Realm GitHub 地址https://github.com/realm/realm-java

  1. greenDAO

    greenDAO 是一款高效、快速的 SQLite 型数据库,star 数量和 Realm 不相上下,由 greenrobot 团队开发维护,此团队还有一个很牛的框架便是 EventBus
    GitHub 地址:greenDAO GitHub 地址https://github.com/greenrobot/greenDAO

九、异步

  1. RxJava
    RxJava 是 ReactiveExtensions 的 Java VM 实现:用于通过使用 observable 序列来组合异步和基于事件程序的库,它扩展观察者模式以支持数据/事件序列,并添加允许你以声明组合序列的操作符,同时提取对低级线程、同步、线程安全性和并发数据结构等问题的隐藏
    GitHub 地址:RxJava GitHub 地址https://github.com/ReactiveX/RxJava

  2. RxAndroid

    一款 Android 客户端组件间异步通信框架,位于通信框架排行榜的第二名,仅在 EventBus 之后,两者的区别是 EventBus 是用来取代组件之间繁琐的 Interface,而 RxAndroid 是用来取代 AnsyTask 的,两者并不冲突
    GitHub 地址:RxAndroid GitHub 地址https://github.com/ReactiveX/RxAndroid

  3. agera

Agera 是一组类和接口,可以帮组编写 Android 的功能,异步和无效应用程序,需要 Android SDK 版本 9 或更高,是 Google 官方出品
GitHub 地址:Agera GitHub 地址https://github.com/google/agera

  1. RxBinding

一款提供 UI 组件事件响应能力的框架,通过 RxBinding 可以理解响应式编程的快乐,让项目的事件流程更加的清晰
GitHub 地址:RxBinding GitHub 地址https://github.com/JakeWharton/RxBinding

十、事件消息

  1. EventBus

    事件间通信框架 stars 第一,在大型项目的 Activities、Fragments、Threads、Services 都有使用场景,尽管 EventBus 在向未创建的组件传递事件时有些局限,仅适合在活着的组件之间传递消息,但任然不妨碍在各个大型项目的场景中使用
    GitHub 地址:EventBus GitHub 地址https://github.com/greenrobot/EventBus

十一、图表

  1. MPAndroidChart

MPAndroidChart 是一款图表框架,以快速、简洁,强大著称的图表框架,支持线条、饼型、气泡和烛台图,以及缩放、拖动和动画
GitHub 地址:MPAndroidChart GitHub 地址https://github.com/PhilJay/MPAndroidChart

十二、生成模板代码

  1. butterknife

    使用注解生成模板代码,将 view 与方法和参数绑定,配合 Android Studio 提供的 ButterKnife 插件,帮组开发者省却了频繁的 findViewById 的烦恼,最新的 ButterKnife 还提供了 onclick 绑定以及字符串的初始化,初学者可以查阅 ButterKnife 以及 ButterKnife 进一步学习,作者是 JakeWharton,是大名鼎鼎的 square 的团队成员之一
    GitHub 地址:butterknife GitHub 地址https://github.com/JakeWharton/butterknife

更多相关文章

  1. [Android]自定义图片左上角斜着的View
  2. Android中android-async-http开源网络框架的简单使用
  3. android 加载图片轻松避免OOM(out of memory)
  4. Android Telephony 框架分析
  5. Android获取mac地址方法,6.0以上也可用
  6. 安卓系统框架介绍
  7. 9款Android常用的快速开发框架
  8. Android中retrofit网络请求框架使用
  9. Android的MediaRecorder框架介绍

随机推荐

  1. Android保持屏幕常亮,PowerManager.WakeLo
  2. android之音乐播放器
  3. Android(安卓)4.0 Launcher源码分析系列(
  4. android UI组件
  5. [置顶] 基于android2.3.5系统:开天辟地And
  6. 为Android封装的HTTP请求组件
  7. android xml布局中TextView文字居中方法
  8. android手机端保存xml数据
  9. android:MotionEvent
  10. Android连接指定WIFI