25类Android常用开源框架

| Fresco | 一个用于管理图像和他们使用的内存的库 |

| Glide | 一个图片加载和缓存的库,使用的App有:网易新闻 |

| GlidePalette | Android Lollipop Palette is now easy to use with Glide |

| PicassoPalette | Android Lollipop Palette is now easy to use with Picasso ! |

| Picasso-transformations | 一个为Picasso提供多种图片变换的库 |

| Glide-transformations | 一个为Glide提供多种图片变换的库 |

2、图片裁剪

==========

| 框架名称 | 功能描述 |

| :-- | :-- |

| uCrop | Image Cropping Library for Android,使用的App有:薄荷,哔哩哔哩 |

| android-crop | 图片裁剪,使用的App有:网易新闻,芒果TV |

| cropper | 图片裁剪开源框架 |

| Android-Image-Cropper | Image Cropping Library for Android, optimized for Camera / Gallery |

| PhotoCropper | Android 大图片裁剪终极解决方案 |

| android-cropimage | CropImage Activity from Gallery.apk packaged as a reusable Android library |

| PhotoCrop | A Library which can be used to crop images in Android similar to Facebook and Telegram,使用的App有:快手 |

3、图片选择

==========

| 框架名称 | 功能描述 |

| :-- | :-- |

| MultiImageSelector | 图片选择,使用的App有:薄荷 |

| BGAPhotoPicker-Android | Android 图片选择、预览、九宫格图片控件、拖拽排序九宫格图片控件 |

| TakePhoto | 轻量级Android照片处理框架 |

| RxGalleryFinal | Android图片单选/多选、拍照、裁剪、压缩。视频选择和录制。GalleryFinal |

| boxing | 一个多媒体选择器库,B站出品。可以选择一张或者多张图片,提供预览和裁剪功能。同样支持gif图,选择视频和图像压缩功能。 |

4、图片转换,压缩,滤镜

================

| 框架名称 | 功能描述 |

| :-- | :-- |

| Android-gpuimage | 一个开源的基于GPU的图像处理库,提供各种各样的图像处理滤镜,并且支持照相机和摄像机的实时滤镜,使用的App有:快手 |

| photoview | 使用的App有:薄荷,网易新闻 |

| circleimageview | 圆形图片,使用的App有:薄荷 |

| RoundedImageView | 圆形图片,使用的App有:薄荷 |

| SelectableRoundedImageView | Android ImageView that supports different radii on each corner |

| android-gif-drawable | gif图片,使用的App有:网易新闻,快手 |

| Luban | 可能是最接近微信朋友圈的图片压缩算法 |

| Compressor | Compressor is a lightweight and powerful android image compression library |

5、高斯模糊,毛玻璃,图片模糊

===================

| 框架名称 | 功能描述 |

| :-- | :-- |

| android-stackblur | Android StackBlur is a library that can perform a blurry effect on a Bitmap based on a gradient or radius, and return the result. The library is based on the code of Mario Klingemann. |

| Blurry | Blurry is an easy blur library for Android |

| blurkit-android | The missing Android blurring library. Fast blur-behind layout that parallels iOS. |

| BlurView | Dynamic iOS-like blur of underlying Views for Android |

| ImageBlurring | Android blurring image(bitmap) by java and jni |

6、缓存

========

| 框架名称 | 功能描述 |

| :-- | :-- |

| LruCache | Android原生API,内存缓存 |

| DiskLruCache | Java实现基于LRU的磁盘缓存 |

| ASimpleCache | 一个为android制定的轻量级的开源缓存框架 |

| base-diskcache | Android 缓存库,融合了DiskLruCache和ASimpleCache |

7、网络请求

==========

| 框架名称 | 功能描述 |

| :-- | :-- |

| httpclient | apache开源的网络请求框架,已过时 |

| AsyncHttpClient | 基于httpclient封装,已过时 |

| OkHttp | Square出品,一个Http与Http/2的客户端 |

| Retrofit | Square出品,类型安全的Http客户端 |

| Volley | Google推出的Android异步网络请求框架和图片加载框架,使用的App有:网易新闻 |

从Android 6.0 开始,Google删除了apache的开源网络请求框架httpclient,所以基于httpclient的AsyncHttpClient也不推荐使用了

Volley适合那些请求频繁但数据量不大的场景,不适用于大数据的请求,比如下载文件

Android 6.0 后,Android开始使用OkHttp,而Retrofit是一个网络代理框架,可以更简单的使用OkHttp

8、网络解析

==========

| 框架名称 | 功能描述 |

| :-- | :-- |

| Gson | 一个Java序列化/反序列化库,可以将JSON和java对象互相转换 |

| Jackson | Jackson可以轻松地将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象 |

| Fastjson | Java上一个快速的JSON解析器/生成器 |

| HtmlPaser | 一种用来解析单个独立html或嵌套html的方式 |

| Jsoup | 一个以最好的DOM,CSS和jQuery解析html的库 |

9、数据库

=========

| 框架名称 | 功能描述 |

| :-- | :-- |

| OrmLite | JDBC和Android的轻量级ORM java包 |

| Sugar | 用超级简单的方法处理Android数据库 |

| GreenDAO | 一种轻快地将对象映射到SQLite数据库的ORM解决方案,使用的App有:薄荷,京东 |

| ActiveAndroid | 以活动记录方式为Android SQLite提供持久化 |

| SQLBrite | SQLiteOpenHelper 和ContentResolver的轻量级包装 |

| android-database-sqlcipher | 数据库加密 |

| storio | Beautiful API for SQLiteDatabase and ContentResolver |

| realm-java | 移动数据库,高性能数据库:一个SQLite和ORM的替换品 |

| ObjectBox | 相信不少人都用过GreenDao和EventBus,这两库都是greenrobot公司出品。ObjectBox也是该公司出品。GreenDao号称是最快的与SQLite的对象关系映射(ORM)。但是自从2011年以来,公司声称发现了许多的缺陷,有很多问题影响了性能。所以开发出另外一套性能最好且易用的NoSQL数据库,优于其他数据库5-15倍的性能。 |

10、依赖注入

===========

| 框架名称 | 功能描述 |

| :-- | :-- |

| ButterKnife | 将Android视图和回调方法绑定到字段和方法上 |

| Dagger2 | 一个Android和java快速依赖注射器 |

| AndroidAnotations | 快速安卓开发。易于维护 |

| RoboGuice | Android平台的Google Guice 已退役 |

| guice | Google开发的依赖注入框架 |

11、图表Chart

==============

| 框架名称 | 功能描述 |

| :-- | :-- |

| WilliamChart | 创建图表的Android库 |

| HelloCharts | 兼容到API8的Android图表库,使用的App有:薄荷 |

| MPAndroidChart | 一个强大的Android图表视图/图形库,使用的App有:春雨医生 |

12、后台处理

===========

| 框架名称 | 功能描述 |

| :-- | :-- |

| Tape | 一个轻快的,事务性的,基于文件的FIFO的库 |

| Android Priority Job Queue | 一个专门为Android轻松调度任务的工作队列 |

13、事件总线

===========

| 框架名称 | 功能描述 |

| :-- | :-- |

| EventBus | 安卓优化的事件总线,简化了活动、片段、线程、服务等的通信,使用的App有:薄荷 |

| Otto | 一个基于Guava的增强的事件总线 |

| HermesEventBus | 一个基于EventBus的、能在进程间发送和接收event的库,在IPC或者插件开发中非常有用 |

14、响应式编程

============

| 框架名称 | 功能描述 |

| :-- | :-- |

| RxJava | JVM上的响应式扩展 |

| RxJavaJoins | 为RxJava提供Joins操作 |

| RxAndroid | Android上的响应式扩展,在RxJava基础上添加了Android线程调度 |

| RxBinding | 提供用RxJava绑定Android UI的API |

| Agera | Android上的响应式编程 |

| RxLifecycle | Lifecycle handling APIs for Android apps using RxJava |

15、Log框架

============

| 框架名称 | 功能描述 |

| :-- | :-- |

| Logger | 简单,漂亮,强大的Android日志工具 |

| Hugo | 在调试版本上注解的触发方法进行日志记录 |

| Timber | 一个小的,可扩展的日志工具 |

16、测试框架

===========

| 框架名称 | 功能描述 |

| :-- | :-- |

| Mockito | Java编写的Mocking单元测试框架 |

| Robotium | Android UI 测试 |

| Robolectric | Android单元测试框架 |

Android自带很多测试工具:JUnit,Monkeyrunner,UiAutomator,Espresso等

17、调试框架

===========

| 框架名称 | 功能描述 |

| :-- | :-- |

| Stetho | 调试Android应用的桥梁,使得可以利用Chrome开发者工具进行调试 |

18、性能优化

===========

| 框架名称 | 功能描述 |

| :-- | :-- |

| LeakCanary | 内存泄漏检测工具 |

| BlockCanary | 轻松找出Android App界面卡顿元凶 |

| ACRA | Android应用程序崩溃报告 |

| Google Guava | Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support] 、并发库 [concurrency libraries] 、通用注解 [common annotations] 、字符串处理 [string processing] 、I/O 等等。 所有这些工具每天都在被Google的工程师应用在产品服务中。 |

| google protobuf | 由google开发,并且在google内部使用。Protobuf的作用和xml、json是一回事,但他是二进制格式,性能好、效率高。ProtoBuf开发者指南 |
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:Android)

最后,面试前该准备哪些资源复习?

其实客户端开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。

这里再分享一下我面试期间的复习路线:(以下体系的复习资料是我从各路大佬收集整理好的)

《Android开发七大模块核心知识笔记》

面试字节两轮后被完虐,字节面试官给你的技术面试指南,请查收

面试字节两轮后被完虐,字节面试官给你的技术面试指南,请查收

《960全网最全Android开发笔记》

面试字节两轮后被完虐,字节面试官给你的技术面试指南,请查收

《379页Android开发面试宝典》

历时半年,我们整理了这份市面上最全面的安卓面试题解析大全
包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。

《507页Android开发相关源码解析》

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

CYRDw-1713058391026)]

《379页Android开发面试宝典》

历时半年,我们整理了这份市面上最全面的安卓面试题解析大全
包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。

《507页Android开发相关源码解析》

只要是程序员,不管是Java还是Android,如果不去阅读源码,只看API文档,那就只是停留于皮毛,这对我们知识体系的建立和完备以及实战技术的提升都是不利的。

真正最能锻炼能力的便是直接去阅读源码,不仅限于阅读各大系统源码,还包括各种优秀的开源库。

《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值