当前位置:   article > 正文

Android常用框架_安卓网络框架

安卓网络框架

4.1Android Async HTTP: 一款基于Http协议的异步请求的网络框架。

github https://github.com/loopj/android-async-http

作者:James Smith

使用:

implementation ‘com.loopj.android:android-async-http:1.5.0-SNAPSHOT’

4.2AndroidAsync: 异步Socket,HTTP(客户端+服务器),WebSocket,和socket.io库。基于NIO而不是线程。

地址:https://github.com/koush/AndroidAsync/tree/master/AndroidAsync/src/com/koushikdutta/async

使用:

implementation ‘com.koushikdutta.async:androidasync:2.+’

4.3OkHttp : okhttp是一款基于HTTP和HTTP2.0协议的网络框架,服务于java和android客户端,专注网络请求的安全高效。

地址 http://square.github.io/okhttp/

github https://github.com/square/okhttp

作者:square团队

使用:

implementation ‘com.squareup.okhttp3:okhttp:3.8.0’

4.4Retrofit:

一款类型安全的网络框架,基于HTTP协议,服务于Android和java语言。

Retrofit2.0开始内置okhttp框 架,Retrofit专注封装接口完成业务需求,okhttp专注网络请求的安全高效

地址

github https://github.com/square/retrofit

作者:square团队

使用:

implementation ‘com.squareup.retrofit2:retrofit:2.3.0’

4.5Volley: google推荐使用的Android端网络请求框架

github https://github.com/google/volley

作者:google

5.数据解析:

5.1Gson:Gson是谷歌官方推出的支持 JSON – Java Object 相互转换的 Java序列化/反序列化 库。

地址:

github https://github.com/google/gson

作者:google

使用:

implementation ‘com.google.code.gson:gson:2.8.4’

5.2Jackson: 相对来说比较高效,在项目中主要使用Jackson进行JSON和Java对象转换。

地址:

github https://github.com/codehaus/jackson

使用:

compile ‘org.codehaus.jackson:jackson-mapper-asl:1+’

compile ‘org.codehaus.jackson:jackson-core-asl:1+’

**5.3Fastjson:**一款基于json解析、生成的框架,快速是它最大的特性,阿里巴巴的出身保证了代码的质量和优越。

github https://github.com/alibaba/fastjson

作者:alibaba

使用:

compile ‘com.alibaba:fastjson:1.1.58.android’

5.4:HtmlPaser 一个用来解析 HTML 文档的开放源码项目,提供了强大的 API 实现对 Html 网页进行信息转换 (Transformation) 以及从 HTML 文档里提取 (Extraction) 感兴趣的信息。它具有小巧、快速、使用简单的特点,并且经过严格的测试。

5.5Jsoup: 方便的增删查改HTML中的元素

地址:

https://github.com/jhy/jsoup

使用:

compile ‘org.jsoup:jsoup:1.9.2’

6.数据库

6.1OrmLite: JDBC和Android的轻量级ORM java包

地址:

https://github.com/j256/ormlite-core

https://github.com/j256/ormlite-android

使用:

compile ‘com.j256.ormlite:ormlite-android:5.0’

compile ‘com.j256.ormlite:ormlite-core:5.0’

6.2Sugar : 用超级简单的方法处理Android数据库,不用写复杂的sql语句,而用简单的API即可完成创建和操纵数据

地址:

https://github.com/chennaione/sugar

使用:

compile ‘com.github.satyan:sugar:1.3’

6.3GreenDAO: 是一款高效、快速的SQLite型数据库

,号称Android最快的关系型数据库支持数据库加密 greendao支持SQLCipher进行数据库加密

github https://github.com/greenrobot/greenDAO

使用:

classpath ‘com.android.tools.build:gradle:2.3.1’

classpath ‘org.greenrobot:greendao-gradle-plugin:3.2.2’ // add plugin

6.4ActiveAndroid: 极大的简化数据库的使用,使用面向对象的方式管理数据库,告别手写SQL历史。每一个数据库表都可以映射为一个类。

地址:

https://github.com/pardom-zz/ActiveAndroid

使用:

compile ‘com.michaelpardo:activeandroid:3.1.0-SNAPSHOT’

6.5SQLBrite: 响应式数据库框架,对 Android 系统的SQLiteOpenHelper和 ContentResolver 的轻量级封装,配合Rxjava使用。

https://github.com/square/sqlbrite

使用:

compile ‘com.squareup.sqlbrite:sqlbrite:0.7.0’

在处理线程问题时,由于要使用到RxAndorid中相关的类,所以我们还要引入

compile ‘io.reactivex:rxandroid:1.1.0’

6.6Realm: 是一款移动端数据库框架,核心数据引擎C++打造,比普通的Sqlite型数据库快的多。

地址:github https://github.com/realm/realm-java

作者:Realm团队

使用:

compile ‘org.jsoup:jsoup:1.11.3’

7.依赖注入

7.1ButterKnife: 提供了一种能力——使用注解生成模板代码,将view与方法和参数绑定。帮助开发者省却了频繁findviewbyid的烦恼,最新的Butter Knife还提供了onclick绑定以及字符串的初始化。

github:https://github.com/JakeWharton/butterknife

作者:JakeWharton ,也是square团队成员之一

使用:

compile ‘com.jakewharton:butterknife:8.6.0’

annotationProcessor ‘com.jakewharton:butterknife-compiler:8.6.0’

7.2Dagger2 : 一款通过依赖注入降低程序间耦合的开发框架,如今google团队接手的dagger2版本,强力开发团队保证了代码在 设计上的优越性

github :https://github.com/google/dagger

作者:google

使用:

dependencies {

compile ‘com.google.dagger?2.x’

annotationProcessor ‘com.google.dagger:dagger-compiler:2.x’

}

//If you’re using classes in dagger.android you’ll also want to include:

compile ‘com.google.dagger:dagger-android:2.x’

compile ‘com.google.dagger:dagger-android-support:2.x’

annotationProcessor ‘com.google.dagger:dagger-android-processor:2.x’

7.3AndroidAnotations : 可以加速Android的开发。它负责管道,让你专注于真正重要的事情。通过简化代码,它简化了代码的维护。

https://github.com/androidannotations/androidannotations

使用:

dependencies {

annotationProcessor “org.androidannotations:androidannotations:2.7”

compile “org.androidannotations:androidannotations-api:2.7”

}

8.图表

8.1WilliamChart: Android图表库,已支持的功能,折线图

,条形图,横向条形图,堆叠柱形图,横向堆叠柱形图

https://github.com/diogobernardino/WilliamChart

使用:

compile ‘com.diogobernardino:williamchart:2.2’

8.2HelloCharts: 一个用来生成统计图表的三方库,目前支持折线图、柱状图和饼状图等常见图表。支持缩放、滑动和动画效果。

https://github.com/lecho/hellocharts-android

使用:

compile ‘com.github.lecho:hellocharts-library:1.5.8@aar’

8.3MPAndroidChart : 快速、简洁。强大著称的图表框架

github https://github.com/PhilJay/MPAndroidChart

作者:PhilJay

使用:

compile ‘com.github.PhilJay:MPAndroidChart:v3.0.2’

9.后台处理

9.1Tape: Android和Java中使用的与队列类相关的集合类,轻快的、事务性的、基于文件的FIFO(先进先出)

https://github.com/square/tape

使用:

compile ‘com.squareup.tape2:tape:2.0.0-beta1’

9.2Android Priority Job Queue: 提供后台任务管理能力的框架,不论是Activity重新加载、Service使用线程池时的任务优先级和并发问题,都不要担心,Job Manage会照顾优先级,持久性,负载平衡,延迟,网络控制,分组,优秀的多线程管理能力。

github https://github.com/yigit/android-priority-jobqueue

作者:Yigit Boyar

compile ‘com.birbit:android-priority-jobqueue:2.0.1’

10. 事件总线

10.1EventBus: 是一款本地组件间通信框架,在大型项目的Activities,fragments,Threads,Services都可以看到它的使用场景,尽管 EventBus在向未创建的组件传递事件时有些局限,仅适合在“活着的”组件间传递消息,但仍不妨碍它活跃在各个大型项目各个场景里。

github https://github.com/greenrobot/EventBus

作者 greenrobot

使用:

compile ‘org.greenrobot:eventbus:3.0.0’

10.2Otto: 一款老旧且强大的事件总线框架。是 square团队早先推出的事件响应型框架,淘宝app的事件驱动也是基于此框架封装的,如今square已经建议开发者采用RxJava RxAndroid来代替otto了。

github https://github.com/square/otto

作者:square

使用:

compile ‘com.michaelpardo:activeandroid:3.1.0-SNAPSHOT’

11. 响应式编程

11.1RxJava: 一款Android客户端组件间异步通信的框架,RxAndroid是用来取代AnsyTask的。

github https://github.com/ReactiveX/RxAndroid

作者 JakeWharton

使用:

compile ‘io.reactivex.rxjava2:rxandroid:2.0.1’

compile ‘io.reactivex.rxjava2:rxjava:2.1.0’

11.2RxJavaJoins: RxJava提供Joins操作(排列组合效果)

https://github.com/ReactiveX/RxJavaJoins

使用:

compile ‘io.reactivex:rxjava-joins:0.22.0’

11.3RxAndroid: 一款Android客户端组件间异步通信的框架

https://github.com/ReactiveX/RxAndroid

使用:

compile ‘io.reactivex.rxjava2:rxandroid:2.0.1’

compile ‘io.reactivex.rxjava2:rxjava:2.1.5’

**11.4RxBinding:**一款提供UI组件事件响应能力的框架,通过RXBinding,你将理解响应式编程的快乐,让项目里的事件流程更清晰。

github https://github.com/JakeWharton/RxBinding

作者:JakeWharton

使用:

Platform bindings:

compile ‘com.jakewharton.rxbinding2:rxbinding:2.0.0’

‘support-v4’ library bindings:

compile ‘com.jakewharton.rxbinding2:rxbinding-support-v4:2.0.0’

‘appcompat-v7’ library bindings:

compile ‘com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.0.0’

‘design’ library bindings:

compile ‘com.jakewharton.rxbinding2:rxbinding-design:2.0.0’

‘recyclerview-v7’ library bindings:

compile ‘com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.0.0’

‘leanback-v17’ library bindings:

compile ‘com.jakewharton.rxbinding2:rxbinding-leanback-v17:2.0.0’

11.5Agera: google专门推出一套响应式编 程框架服务于Android开发者,相比于之响应式编程框架榜首的 RxJava RxAndroid,它更轻量,两者最大的不同点在于agera基于push event、pull data (VS Rx系列 push data)。

github https://github.com/google/agera

作者:Google

使用:

compile ‘com.google.android.agera:agera:1.3.0’

扩展能力

compile ‘com.google.android.agera:content:1.3.0’

compile ‘com.google.android.agera:database:1.3.0’

compile ‘com.google.android.agera:net:1.3.0’

compile ‘com.google.android.agera:rvadapter:1.3.0’

compile ‘com.google.android.agera:rvdatabinding:1.3.0’

12. Log框架

12.1Logger: 一款让log日志优雅显示的框架。它最大的亮点是优雅的输出log信息,并且支持多种格式:线程、Json、Xml、List、Map等

github https://github.com/orhanobut/logger

作者:Orhan Obut

使用:

compile ‘com.orhanobut:logger:2.1.1’

13. 测试框架

先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

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

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

img

img

img

img

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

如果你觉得这些内容对你有帮助,可以扫码领取!!!!

面试复习笔记

这份资料我从春招开始,就会将各博客、论坛。网站上等优质的Android开发中高级面试题收集起来,然后全网寻找最优的解答方案。每一道面试题都是百分百的大厂面经真题+最优解答。包知识脉络 + 诸多细节。
节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

《960页Android开发笔记》

《1307页Android开发面试宝典》

包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。

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

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

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


《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可免费领取!

-E0NvqJ9O-1711277975503)]

《1307页Android开发面试宝典》

包含了腾讯、百度、小米、阿里、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目。熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。

[外链图片转存中…(img-202eHQQ9-1711277975504)]

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

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

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

[外链图片转存中…(img-xSUMHDgP-1711277975504)]
《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可免费领取!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/692513
推荐阅读
相关标签
  

闽ICP备14008679号