首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Carson带你学Android:这是一份详细的 Retrofit使用教程(含实例讲解)

前言 在Andrroid开发,网络请求十分常用 而在Android网络请求库Retrofit是当下最热的一个网络请求库 今天,我献上一份非常详细Retrofit v2.0的使用教程,希望你们会喜欢...Android:网络请求库Retrofit使用教程 Carson带你学Android:网络请求库Retrofit源码分析 Carson带你学Android图片加载库Glide使用教程 Carson... Http请求 抽象成 Java接口:采用 注解 描述网络请求参数 配置网络请求参数 用 动态代理 动态 将该接口的注解“翻译”成一个 Http 请求,最后再执行 Http 请求 注:接口中的每个方法的参数都需要使用注解标注...关于网络请求适配器(CallAdapter) Retrofit支持多种网络请求适配器方式:guava、Java8rxjava 使用使用的是 Android 默认的 CallAdapter,则不需要添加网络请求适配器的依赖...Retrofit 的拓展使用 Retrofit使用场景非常丰富,支持RxJavaPrototocobuff 具体设置也非常简单 & 方便: Retrofit

3.3K20

Retrofit解析2之使用简介

字段名称先进行UTF-8进行编码,再根据RFC-3986进行URI编码。 2、@Multipart:作用于方法 使用该注解,表示请求体是多部分的,每个部分作为一个参数,且用Part注解声明。...(四)其他注解: 1、@Path:用于方法的参数 在URL路径替换指定参数值。使用String.valueOf()URL编码值转换为字符串。...尽量只用在URL的path部分,url的参数使用Query、QueryMap代替,保证接口的简洁 4、Query、Field、Part支持数据实现了iterable接口的类型,List、Set等,方便向后台传递数组...如果表单中有上传文件,编码类型需要使用"multipart/form-data",类型,才能完成传递文件数据。...七、总结 RetrofitREST API抽象成Java接口,使用注解来描述每一个API地址请求,支持URL参数替换(包括查询参数路径参数),以及表单编码多部分请求功能。

4.7K30
您找到你想要的搜索结果了吗?
是的
没有找到

Carson带你学Android:这是一份详细的 Retrofit使用教程(含实例讲解)

前言 在Andrroid开发,网络请求十分常用 而在Android网络请求库Retrofit是当下最热的一个网络请求库 今天,我献上一份非常详细Retrofit v2.0的使用教程,希望你们会喜欢...Android:网络请求库Retrofit使用教程 Carson带你学Android:网络请求库Retrofit源码分析 Carson带你学Android图片加载库Glide使用教程 Carson... Http请求 抽象成 Java接口:采用 注解 描述网络请求参数 配置网络请求参数 用 动态代理 动态 将该接口的注解“翻译”成一个 Http 请求,最后再执行 Http 请求 注:接口中的每个方法的参数都需要使用注解标注...关于网络请求适配器(CallAdapter) Retrofit支持多种网络请求适配器方式:guava、Java8rxjava 使用使用的是 Android 默认的 CallAdapter,则不需要添加网络请求适配器的依赖...Retrofit 的拓展使用 Retrofit使用场景非常丰富,支持RxJavaPrototocobuff 具体设置也非常简单 & 方便: Retrofit

2.2K10

2019最新Android面试题「建议收藏」

,wrap_content,weight 图片资源,不同图片的的分辨率,放在相应的文件夹下可使用百分比代替。...如果只是作为列表展示,则两者区别并不是很大。 14,Android异步消息处理机制(这个也会经常问到) 异步消息处理机制主要是用来解决子线程更新UI的问题 主要有四个部分: ①....默认实现了较多缓存算法, Size 最大先删除、使用最少先删除、最近最少使用、先进先删除、时间最长先删除等; ④ 支持本地缓存文件名规则定义; 缺点: 缺点在于不支持GIF图片加载, 缓存机制没有...okhttp针对JavaAndroid程序,封装的一个高性能的http请求库,支持同步,异步,而且okhttp又封装了线程池,封装了数据转换,封装了参数使用,错误处理等。API使用起来更加的方便。...SD卡内存,之后运行APP时,优先访问内存图片缓存,若内存没有,则加载本地SD卡图片,最后选择访问网络 20.Android与服务器交互的方式的对称加密非对称加密是什么?

82920

Android使用Retrofit进行网络请求及Kotlin结合使用

:converter-gson:2.9.0") 注解 Retrofit使用大量注解来简化请求,Retrofitokhttp请求抽象成接口,使用注解来配置描述网络请求参数。...,用于添加不固定的header,它会更新已有请求头 请求参数注解 请求参数注解 说明 @Body 多用于Post请求发送非表达数据,根据转换方式实例对象转化为对应字符串传递参数,比如使用Post发送...Json数据,添加GsonConverterFactory则是body转化为json字符串进行传递 @Filed 多用于Post方式传递参数,需要结合@FromUrlEncoded使用,即以表单的形式传递参数...@FiledMap 多用于Post请求的表单字段,需要结合@FromUrlEncoded使用 @Part 用于表单字段,PartPartMap与@multipart注解结合使用,适合文件上传的情况...如果没有使用注解,默认会把数据全部载入到内存,该注解在下载大文件时特别有用 参数示例 URL上的参数 @GET("user") Call getData2(@Query(

58910

2019最新Android面试题

,wrap_content,weight 图片资源,不同图片的的分辨率,放在相应的文件夹下可使用百分比代替。...如果只是作为列表展示,则两者区别并不是很大。 14,Android异步消息处理机制(这个也会经常问到) 异步消息处理机制主要是用来解决子线程更新UI的问题 主要有四个部分:### ①....默认实现了较多缓存算法, Size 最大先删除、使用最少先删除、最近最少使用、先进先删除、时间最长先删除等; ④ 支持本地缓存文件名规则定义; 缺点: 缺点在于不支持GIF图片加载, 缓存机制没有...okhttp针对JavaAndroid程序,封装的一个高性能的http请求库,支持同步,异步,而且okhttp又封装了线程池,封装了数据转换,封装了参数使用,错误处理等。API使用起来更加的方便。...SD卡内存,之后运行APP时,优先访问内存图片缓存,若内存没有,则加载本地SD卡图片,最后选择访问网络 20.Android与服务器交互的方式的对称加密非对称加密是什么?

96420

「2020 新手必备 」极速入门 Retrofit + OkHttp 网络框架到实战,这一篇就够了!

Retrofit 早已不是什么新技术了,想必看到这篇博客的大家都早已熟知,这里就不啰嗦了,简单介绍下: Retrofit 是一个针对 Java Android 的设计的 REST 客户机。...它通过基于 REST 的 web 服务检索上传 JSON (或其他结构化数据)变得相对容易。在使用,您可以配置用于数据序列化的转换器。...= new FormBody .Builder() //设置参数名称参数值 .add("username",mAccountEdit.getText... password 是怎么的话,我这里简单说下 比如说我们现在随便打开一个网页,就拿百度图片里搜索 Github 页面为例: 后端写服务器的同学会通过这些参数,像 HashMap get(“...登录功能实战 到这里想必大家都已经学会了 Retrofit使用 那么现在我就拿登录功能举例,看看如何在项目中引用 Retrofit 实战部分先置条件是 MVP + ButterKnife,大家很容易在网上找到资料

1.1K30

Android网络编程(十)Retrofit2后篇

前言 在上一篇Android网络编程(九)Retrofit2前篇[基本使用]我们了解了Retrofit的最基本的GET方式访问网络的写法以及请求参数的简单介绍。...但是在网络请求中一般为了更精确的查找到我们所需要的数据,需要传入很多的查询参数,如果用@Query会比较麻烦,这时我们可以采用@QueryMap,所有的参数集成在一个Map统一传递: ?...传输数据类型Json字符串:@Body 我们也可以用POST方式Json字符串作为请求体发送到服务器,请求网络接口代码为: ?...Multipart注解表示允许多个@Part,updateUser方法第一个参数是准备上传的图片文件使用了MultipartBody.Part类型,另一个参数是RequestBody类型,它用来传递简单的键值对...多个文件上传:@PartMap ? 文件上传是类似的,只是使用Map封装了上传的文件,并用@PartMap注解来标示起来。其他的都一样,这里就不赘述了。

1K60

Android开发丨主题周】盘点Android开发第三方组件与服务层

Android消息传递实现方式有很多种,有Handler、本地广播全局广播、Intent、接口回调、观察者模式等,Handler可以实现线程间的通信,使用场景包括处理种类繁多的事件,子线程与主线程的切换等...;BroadcastReceiver可以实现进程间通信,主要用来接收一些系统广播,也可用进行组件之间的通信,ServiceActivity之间的通信;Intent可以完成两个组件之间的通信,传递一些简单的数据...使用OkHttp非常简便,它的请求和响应的API大都采用建造者模式设计。 6 Retrofit Retrofit是一个类型安全的HTTP的客户端,在AndroidJava中都可使用。...Volley是对网络库HttpURLConnectionHttpClient的封装,由于Volley良好的扩展性,它还可以配置成使用OkHttp来作为自己的底层网络库,而Retrofit则是对OkHttp...可观察说明ReactiveX使用观察者模式,异步说明可以完成多线程编程,事件说明会涉及事件的传递处理。

92020

深入浅出Retrofit2.x(二)

上一篇文章深入浅出Retrofit2.x(一),我们讲解了 Retrofit 的最基本用法,以及 GET 请求示例,非常简单,相信大家都已经会使用了,本篇文章继续介绍 Retrofit 的一些其他的一些常用用法...,主要围绕如何使用 POST 请求提交表单数据,提交 json 字符串作为请求体,还有一些 Retrofit 的相关注解介绍等。...@Path 用于 url 的占位符 @Query 用于 GET 请求的 url 中指定 key=value 参数 @QueryMap @Query 使用类似 @Url 指定请求路径,可以是全路径相对路径...,需要配合使用 @Part @Streaming 表示响应用字节流的形式返回,如果没使用该注解,默认会把数据全部载入到内存,该注解在在下载大文件的特别有用 好了,前两篇的分享已经完了,主要是围绕 Retrofit...猜你喜欢: 给大家推荐一个神器 深入浅出Retrofit2.x(一) 不得不会的10点Java基础知识 Android 最全 Intent 传递数据姿势

1.3K10

Android从立项到上线——修仙之路

不建议使用官方JSONObject解析,容易出错 实体类属性名与json字段名完全一致 json字段名全部使用英文,不可英文、拼音夹杂 用户表识建议使用Cookie 建议使用POST解析,它对参数数量没有要求...,persenter负责调用model,并将结果返回给view供其展示 MVP: MVP模式相当于在MVC模式又加了一个Presenter用于处理模型逻辑,ViewModel完全独立开,在android...同时Activity/Fragment作为with()参数的好处是:图片加载会Activity/Fragment的生命周期保持一致,比如Paused状态在暂停加载,在Resumed的时候又自动重新加载...使用复杂的图片压缩转换来尽可能的减少内存消耗 自带内存硬盘二级缓存功能 Fresco: 优点: 最大的优势便在于5.0以下(最低2.3) bitmap的加载,在5.0以下系统,Fresco图片放到一个特别的内存区域...要注意:以上添加了Retrofit、RxJavaGson依赖,版本号必须一致 b、登录Service ? login方法的返回值是Observable类型,就是RxJava的被观察者。

82020

史上最全的Android面试题集锦

),接口中有一个空的方法,在fragment需要的时候调用接口的方法,值可以作为参数放在这个方法,然后让Activity实现这个接口,必然会重写这个方法,这样值就传到了Activity Fragment...原理:App应用程序通过Retrofit请求网络,实际上是使用Retrofit接口层封装请求参数,Header、URL等信息,之后由OKHttp完成后续的请求,在服务器返回数据之后,OKHttp原始的结果交给...retrofit使用 1.在retrofit通过一个接口作为http请求的api接口 public interface NetApi { @GET("repos/{owner}/{repo}/...在build.grade里面配置: [image] 资源冲突 当我们创建了多个Module的时候,如何解决相同资源文件名合并的冲突,业务ModuleBaseModule资源文件名称重复会产生冲突,解决方案在于...比如使用 Android Lint 删除冗余资源,资源文件最少化等。 图片优化。比如利用 PNG优化工具 对图片做压缩处理。推荐目前最先进的压缩工具Googlek开源库zopfli。

74140

史上最全的Android面试题集锦

原理:App应用程序通过Retrofit请求网络,实际上是使用Retrofit接口层封装请求参数,Header、URL等信息,之后由OKHttp完成后续的请求,在服务器返回数据之后,OKHttp原始的结果交给...retrofit使用 1.在retrofit通过一个接口作为http请求的api接口 public interface NetApi { @GET("repos/{owner}/{repo}/...资源冲突 当我们创建了多个Module的时候,如何解决相同资源文件名合并的冲突,业务ModuleBaseModule资源文件名称重复会产生冲突,解决方案在于: 每个 module 都有 app_name...比如使用 Android Lint 删除冗余资源,资源文件最少化等。 图片优化。比如利用 PNG优化工具 对图片做压缩处理。推荐目前最先进的压缩工具Googlek开源库zopfli。...原始类型参数类型之间的主要区别是,在编译时编译器不会对原始类型进行类型安全检查,却会对带参数的类型进行检查,通过使用Object作为类型,可以告知编译器该方法可以接受任何类型的对象,比如String

1.3K42

深入浅出RxJava+Retrofit+OkHttp网络请求

:gson:2.8.0' 3.常用注解 这里介绍一些常用的注解的使用 @Query、@QueryMap:用于Http Get请求传递参数 @Field:用于Post方式传递参数,需要在请求接口方法上添加...@FormUrlEncoded,即以表单的方式传递参数 @Body:用于Post,根据转换方式实例对象转化为对应字符串传递参数.比如Retrofit添加GsonConverterFactory则是body...转化为gson字符串进行传递 @Path:用于URL上占位符 @Part:配合@Multipart使用,一般用于文件上传 @Header:添加http header @Headers:跟@Header作用一样...,只是使用方式不一样,@Header是作为请求方法的参数传入,@Headers是以固定方式直接添加到请求方法上 ReTrofit基本使用: 首先给定一个测试接口文档,后面的博客我们都是用这个接口调试...6.强调 很多兄弟通过QQ群反馈给我说,使用一个接口需要写一个对应的api类继承BaseApi是不是很麻烦,我这里强调一下,这样封装是为了一个Api接口作为一个对象去封装,个人觉得有必要封装成一个类,

5.8K10

Android开发实践

DB_VERSION DB_NAME 图片资源文件 建议用模块名称+逻辑名称 book_cover_default.png book_type_online.png Layout命名 建议用模块名称+逻辑名称...books_comment.xml books_comment_item.xml Layout的id命名 建议用layout文件名称做前缀+逻辑名称+view缩写 @+id/books_comment_item_bookcover_iv...@+id/books_comment_item_nickname_tv 注释规范 /** * 项目名称 * 包名 * * 文件描述:TODO * 创 建 人:TODO * 创建时间:2016...文件添加配置文件的引用 //应用配置文件 apply from: "config.gradle" buildscript { repositories { jcenter()...testin免费移动App真机云测试平台 Emmagee网易出品的,是监控指定被测应用在使用过程占用机器的CPU、内存、流量资源的性能测试小工具。

97211

Android常见面试题

其效果相当于多个应用共享一个应用,不管谁激活该 Activity 都会进入同一个应用使用场景闹铃提醒,闹铃提醒与闹铃设置分离。...从顶层父View向子View的递归调用view.layout方法的过程,即父View根据上一步measure子View所得到的布局大小布局参数子View放在合适的位置上。...的public方法 22、Android UI适配 字体使用sp,使用dp,多使用match_parent,wrap_content,weight 图片资源,不同图片的的分辨率,放在相应的文件夹下可使用百分比代替...JS去调用Android的代码 通过WebView的addJavascriptInterface()进行对象映射 ,该方法使用简单,仅Android对象JS对象映射即可,但是存在比较大的漏洞。...okhttp针对JavaAndroid程序,封装的一个高性能的http请求库,支持同步,异步,而且okhttp又封装了线程池,封装了数据转换,封装了参数使用,错误处理等。API使用起来更加的方便。

1.2K10

这是一份很详细的 Retrofit 2.0 使用教程(含实例讲解) - 简书

原始的结果交给 RetrofitRetrofit根据用户的需求对结果进行解析 除了Retrofit,如今Android主流的网络请求框架有: Android-Async-Http Volley... Http请求 抽象成 Java接口:采用 注解 描述网络请求参数 配置网络请求参数 用 动态代理 动态 将该接口的注解“翻译”成一个 Http 请求,最后再执行 Http 请求 注:接口中的每个方法的参数都需要使用注解标注...@Query@QueryMap 作用:用于 @GET 方法的查询参数(Query = Url ‘?’...关于网络请求适配器(CallAdapter) Retrofit支持多种网络请求适配器方式:guava、Java8rxjava 使用使用的是 Android 默认的 CallAdapter,则不需要添加网络请求适配器的依赖...Demo地址 Carson_Ho的Github:https://github.com/Carson-Ho/RetrofitDemo Retrofit使用场景非常丰富,支持RxJavaPrototocobuff

8.2K72

这是一份很详细的 Retrofit 2.0 使用教程(含实例讲解)

Http请求 抽象成 Java接口:采用 注解 描述网络请求参数 配置网络请求参数 用 动态代理 动态 将该接口的注解“翻译”成一个 Http 请求,最后再执行 Http 请求 注:...@Query@QueryMap 作用:用于 @GET 方法的查询参数(Query = Url ‘?’...cate=android,其中,Query = cate 具体使用:配置时只需要在接口方法增加一个参数即可: @GET("/") Call cate(@Query...关于网络请求适配器(CallAdapter) Retrofit支持多种网络请求适配器方式:guava、Java8rxjava 使用使用的是 Android 默认的 CallAdapter,则不需要添加网络请求适配器的依赖...Retrofit 的拓展使用 Retrofit使用场景非常丰富,支持RxJavaPrototocobuff 具体设置也非常简单 & 方便: Retrofit

2.7K31
领券