终于还是要进行Android实战开篇系列了,年初就说过要进行这个系列专题。Android是一个很大的话题,作为非资深Android开发工程师(只是两年的Android系统开发及两年app开发经验而已),这里只是将Android开发所需的基本只是及开发中所遇到的问题进行陈述,以Andriod app开发为例,磨刀不误砍柴工,这里还用到了常用的开源框架,先借鉴附上
https://www.oschina.net/news/73836/15-android-general-popular-frameworks
好牛逼的总结:
1. 缓存
-
DiskLruCache Java实现基于LRU的磁盘缓存
2.图片加载
-
Android Universal Image Loader 一个强大的加载,缓存,展示图片的库
-
Picasso一个强大的图片下载与缓存的库
-
Fresco 一个用于管理图像和他们使用的内存的库
-
Glide 一个图片加载和缓存的库(推荐使用)
3. 图片处理
-
Picasso-transformations 一个为Picasso提供多种图片变换的库
-
Glide-transformations 一个为Glide提供多种图片变换的库(推荐使用)
-
Android-gpuimage 基于OpenGL的Android过滤器
4. 网络请求
-
Android Async HTTP Android异步HTTP库
-
AndroidAsync 异步Socket,HTTP(客户端+服务器),WebSocket,和socket.io库。基于NIO而不是线程。
-
OkHttp 一个Http与Http/2的客户端(推荐使用)
-
Retrofit 类型安全的Http客户端(推荐使用)
-
Volley Google推出的Android异步网络请求框架和图片加载框架
5. 网络解析(根据喜好使用)
-
Gson 一个Java序列化/反序列化库,可以将JSON和java对象互相转换
-
Jackson Jackson可以轻松地将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象
-
Fastjson Java上一个快速的JSON解析器/生成器
-
HtmlPaser 一种用来解析单个独立html或嵌套html的方式
6. 数据库
-
OrmLiteJDBC和Android的轻量级ORM java包
-
Sugar 用超级简单的方法处理Android数据库
-
GreenDAO 一种轻快地将对象映射到SQLite数据库的ORM解决方案
-
ActiveAndroid 以活动记录方式为Android SQLite提供持久化
-
SQLBrite SQLiteOpenHelper 和ContentResolver的轻量级包装
-
Realm 移动数据库:一个SQLite和ORM的替换品
7. 依赖注入
-
ButterKnife 将Android视图和回调方法绑定到字段和方法上(推荐使用)
-
Dagger2一个Android和java快速依赖注射器。
-
AndroidAnotations 快速安卓开发。易于维护
-
RoboGuice Android平台的Google Guice
8. 图表
-
WilliamChart 创建图表的Android库
-
HelloCharts 兼容到API8的Android图表库
-
MPAndroidChart 一个强大的Android图表视图/图形库
9. 后台处理
-
Tape 一个轻快的,事务性的,基于文件的FIFO的库
-
Android Priority Job Queue 一个专门为Android轻松调度任务的工作队列
10. 事件总线
11. 响应式编程
-
RxJava JVM上的响应式扩展
-
RxJavaJoins 为RxJava提供Joins操作
-
RxAndroid Android上的响应式扩展,在RxJava基础上添加了Android线程调度
-
RxBinding 提供用RxJava绑定Android UI的API
-
Agera Android上的响应式编程
12. Log框架
13. 测试框架
-
MockitoJava编写的Mocking单元测试框架
-
Robotium Android UI 测试
-
RobolectricAndroid单元测试框架
Android自带很多测试工具:JUnit,Monkeyrunner,UiAutomator,Espresso等
14. 调试框架
-
Stetho 调试Android应用的桥梁,使得可以利用Chrome开发者工具进行调试
15. 性能优化
-
LeakCanary 内存泄漏检测工具
-
ACRA Android应用程序崩溃报告