retrofit 基础使用】的更多相关文章

1.先导入依赖 加上网络权限 <uses-permission android:name="android.permission.INTERNET" /> 2.创建接口设置请求和类型参数 新建UserInfoModel类 用来发送请求后,存储数据的新建UserMsgService接口例子: UserMsgService.java 3.创建retrofit对象.设置数据解析器 String url = ""; Retrofit retrofit = new…
实际开发过程中一般都会选择一些网络框架提升开发效率.随着Google对HttpClient 摒弃和Volley框架的逐渐没落.OkHttp開始异军突起.而Retrofit则对OkHttp进行了强制依赖,能够简单理解Retroifit在OKHttp基础上进一步完好. Retrofit是由Square公司出品的针对于Android和Java的类型安全的Httpclient,眼下推出了2.0+的版本号. Retrofit框架项目地址:https://github.com/square/retrofit…
本文将接着<Retrofit源码设计模式解析(上)>,继续分享以下设计模式在Retrofit中的应用: 适配器模式 策略模式 观察者模式 单例模式 原型模式 享元模式 一.适配器模式 在上篇说明CallAdapter.Factory使用工厂模式时,提到CallAdapter本身采用了适配器模式.适配器模式将一个接口转换成客户端希望的另一个接口,使接口本不兼容的类可以一起工作. Call接口是Retrofit内置的发送请求给服务器并且返回响应体的调用接口,包括同步.异步请求,查询.取消.复制等功…
retrofit 基础入门:https://www.jianshu.com/p/b64a2de066c3 retrofit 使用详解:https://blog.csdn.net/carson_ho/article/details/73732076…
上一篇文章讲述了Retrofit的简单使用,这次我们学习一下Retrofit的各种HTTP请求. Retrofit基础 在Retrofit中使用注解的方式来区分请求类型.比如@GET("")表示一个GET请求,括号中的内容为请求的地址. 格式 含义 @GET 表示这是一个GET请求 @POST 表示这个一个POST请求 @PUT 表示这是一个PUT请求 @DELETE 表示这是一个DELETE请求 @HEAD 表示这是一个HEAD请求 @OPTIONS 表示这是一个OPTION请求 @…
Retrofit是什么 Retrofit是一个类型安全的HTTP客户端,支持Android和Java.它是Square公司开源的项目,当前版本2.0. 在实际开发中,我们Retrofit配合OKHTTP来使用.我们使用OKHTTP当做传输层,使用Retrofit在OKHTTP之上,使用Java的接口描述我们的HTTP协议. 简单的说: 使用Retrofit转换HTTP 的API协议成一个java的Interface服务,我们直接使用java类会方便好多. Github: https://gith…
https://www.jianshu.com/p/5bc866b9cbb9 最近因为手头上的工作做完了,比较闲,想着做一些优化.看到以前用的那一套网络框架添加一个请求比较麻烦,并且比较难用,所以想改造一下网络框架.现在Android 市面上很火的当然是 Retrofit+RxJava + OkHttp, 功能强大,简单易用,因此选用这套方案来改造网络库.本篇文章是对Retrofit 的基本使用方法做一些简单的介绍.后面会再写一篇 Retrofit + RxJava + OkHttp 的封装过程…
前言: 通过上面的学习,我们不难发现单纯使用okHttp来作为网络库还是多多少少有那么一点点不太方便,而且还需自己来管理接口,对于接口的使用的是哪种请求方式也不能一目了然,出于这个目的接下来学习一下Retrofit+Okhttp的搭配使用. okHttp相关文章地址: Android okHttp网络请求之Get/Post请求 Android okHttp网络请求之文件上传下载 Android okHttp网络请求之Json解析 Android okHttp网络请求之缓存控制Cache-Cont…
深入理解gradle编译-Android基础篇 导读 Gradle基于Groovy的特定领域语言(DSL)编写的一种自动化建构工具,Groovy作为一种高级语言由Java代码实现,本文将对Gradle一些常见问题进行一一介绍: 理解Gradle与android app之间的关系,以及Gradle需要构建的build文件. 在Android Studio中执行Gradle命令. 在Android app添加java库文件. 将eclipse工程导入Eclipse ADT工程 如何为一个APK文件进…
目前已经有不少Android客户端在使用Retrofit+RxJava实现网络请求了,相比于xUtils,Volley等网络访问框架,其具有网络访问效率高(基于OkHttp).内存占用少.代码量小以及数据传输安全性高等特点. Retrofit源码更是经典的设计模式教程,笔者已在之前的文章中分享过自己的一些体会,有兴趣的话可点击以下链接了解:<Retrofit源码设计模式解析(上)>.<Retrofit源码设计模式解析(下)> 但在具体业务场景下,比如涉及到多种网络请求(GET/PU…
Retrofit通过注解的方法标记HTTP请求参数,支持常用HTTP方法,统一返回值解析,支持异步/同步的请求方式,将HTTP请求对象化,参数化.真正执行网络访问的是Okhttp,Okhttp支持HTTP&HTTP2,因此,使用Retrofit可以支持REST.HTTPS及SPDY. 行业内分析Retrofit的使用方法的文章已经比较丰富,这里不再赘述,如想了解这部分内容,请参考如下链接. <用 Retrofit 2 简化 HTTP 请求> <Retrofit 源码解析>…
RxJava的基本用法: 关于 unSubscribe() 的调用问题: There is no need to unsubscribe in onCompleted. Take a look at The Observable Contract When an Observable issues an OnError or OnComplete notification to its observers, this ends the subscription. Observers do not…
没耐心自己分析源码的同学,还可以参考Stay录制的视频版 Retrofit分析-漂亮的解耦套路(视频版) 万万没想到Retrofit会这么火,在没看源码之前,我简单的认为是因为它跟OkHttp同出一源(Square),所以才会炒的那么热.又或者是因为它能支持RxJava,所以火上浇油,一发不可收拾. 后来看过Retrofit源码之后,我才理解为什么它倍受关注,是因为它集诸优点于一身,并且炒鸡解耦.你能预见的特殊需求,都能非常容易的扩展. 没有HTTP框架的日子 我们先来看一下没有HTTP框架以前…
这篇博文酝酿好久了,今天终于下定决心开始写!RxAndroid和Retrofit都算是当下非常流行的Android开发框架,这两个框架光是单独使用就已经爽歪歪了,那么将RxAndroid和Retrofit结合起来,又会有怎样的效果呢? 鉴于很多小伙伴可能还没用过RxJava或者RxAndroid,所以我打算先来介绍一下RxJava和RxAndroid,然后再来介绍RxAndroid和Retrofit组合拳!! 本文主要包括以下三方面内容: 1.RxJava简介 2.RxJava在Android中…
Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http.https,基于spring boot四:https的SSL证书在Android端基于okhttp,Retrofit的使用 所有文章会优先在:微信公众号“颜家大少”中发布转载请标明出处 先来回顾一下 前面已分别介绍了https,SSL证书的生成,并完成了服务器端的https的部署并提到一个重要的用…
首先,展示一下封装好之后的项目的层级结构. 1.先创建一个RetrofitApiService.java package com.xdw.retrofitrxmvpdemo.http; import com.xdw.retrofitrxmvpdemo.model.UserInfo; import retrofit2.http.GET; import retrofit2.http.Query; import rx.Observable; /** * Created by 夏德旺 on 2017/1…
在前面已经初步封装了一个MVP的网络请求框架,那只是个雏形,还有很多功能不完善,现在进一步进行封装.添加了网络请求时的等待框,retrofit中添加了日志打印拦截器,添加了token拦截器,并且对DataManager类进行了扩展,真正体现它的作用,并且对大量的重复代码做了一定封装,减少代码的冗余. 下面结合上篇文章,进行下一步的封装. 1.首先完善Result.java这个类. 通常在我们写API接口文档的时候,后端返回的数据格式都是 "code":1    //1:成功 //-1:…
本文出处 :Tamic 文/ http://blog.csdn.net/sk719887916/article/details/52132106 Rxjava +Rterofit 需要掌握的几个技巧 RXjava入门和详解请移步 比较有名的<RxJAVA详解>,这里继续前篇一些列的介绍一些容易忽略的技巧. Retrofit+RxJava结合系列请阅读: Retrofit 2.0 超能实践,完美支持Https传输 Retrofit2.0 完美同步Cookie实现免登录 Retrofit 2.0…
CSDN:码小白 原文地址: http://blog.csdn.net/sk719887916/article/details/51957819 前言 Retrofit用法和介绍的文章实在是多的数不清,也有很多介绍其内部原理的,但是看过之后,还是让很多人云里雾里, 本篇文章旨在通过自我实现一个自定义的Retrofit,来熟悉了解其Retrofit的内部原理.也帮助针对那些项目很稳定,解决迁移API接口带来的难度问题. 如果对Retrofit不熟悉的请先阅读Retrofit全介绍: Retrofi…
文:http://blog.csdn.net/sk719887916/article/details/51755427 Tamic 简书&csdn同步 通过前两篇姿势的入门 Retrofit 2.0 超能实践,完美支持Https传输 Retrofit2.0 完美同步Cookie实现免登录 本文出自:http://blog.csdn.net/sk719887916/article/details/51755427 码小白 通过对Retrofit2.0的前两篇的基础入门和案例实践,掌握了怎么样使用R…
rxretrofitlibrary是一个已经写好的网络框架库,先以本地Module导入到自己的项目中. 1.它的初始化操作大多在自定义的application中完成,如: public class App extends Application { @Override public void onCreate() { super.onCreate(); //初始化网络框架库 RxRetrofitApp.init(this,true); } } 2.在rxretrofitlibrary下定义一个回…
Xutils这个框架非常全面,可以进行网络请求,可以进行图片加载处理,可以数据储存,还可以对view进行注解,使用这个框架非常方便,但是缺点也是非常明显的,使用这个项目,会导致项目对这个框架依赖非常的严重,一旦这个框架出现问题,那么对项目来说影响非常大的.. OKhttp:Android开发中是可以直接使用现成的api进行网络请求的.就是使用HttpClient,HttpUrlConnection进行操作.okhttp针对Java和Android程序,封装的一个高性能的http请求库,支持同步,…
本文是 Android RxJava2+Retrofit2+OkHttp3 的使用(一) --基础篇 Retrofit2 的使用 本文的目标是用 Retrofit写一个网络请求: 本文以从获取天气预报接口 (具体接口查看上文 免费天气预报接口)为例,讲解 Retrofit2 的使用 废话不多说,开撸 一.添加依赖 在build.gradle文件中添加如下配置 //retrofit2 compile 'com.squareup.retrofit2:retrofit:2.3.0'//导入retrof…
1.前言 网络通信一直是Android项目里比较重要的一个模块,Android开源项目上出现过很多优秀的网络框架,从一开始只是一些对HttpClient和HttpUrlConnection简易封装使用的工具类,到后来Google开源的比较完善丰富的Volley,再到如今比较流行的Okhttp.Retrofit. 要想理解他们之间存在的异同(或者具体点说,要想更深入地掌握Android开发中的网络通信技术),必须对网络基础知识.Android网络框架的基本原理等做到心中有数.信手拈来,关键时刻才能…
Retrofit官方文档翻译 官方文档网址 http://square.github.io/retrofit/ 介绍 Retrofit 将你的 HTTP API 转换为 Java 接口. public interface GitHubService { @GET("users/{user}/repos") Call<List<Repo>> listRepos(@Path("user") String user); } Retrofit 类会生…
开题:在此默认各位看官对Retrofit.以及Okhttp已经有过一定的了解及应用,所以今天我们不谈基础入门的东西,今天我们谈在Retrofit请求接口管理类中URL参数含有动态参数的处理方式.一般我们使用Retrofit大部分场景中URL都是以注解的方式静态声明的,即URL及path路径都是固定不变,可变部分作为方法的参数传入,那有一些特殊情况会要求我们再使用@GET().或者@POST()的时候URL路径里含有可变参数,需要动态处理,下面通过例子我逐个为大家分析讲解. 说明:以下所有Retr…
原文url: http://blog.iliyun.net/2016/11/20/%E6%A1%86%E6%9E%B6%E5%B0%81%E8%A3%85/ 这几年来android的网络请求技术层出不穷,网络请求从最初的HttpClient,HttpURLConnection到Volley,OkHttp,Retrofit.但是如果直接使用,每个网络请求都会重复很多相同的代码,这显然不是一个老司机需要的.接下来我们就讲讲网络请求封装那点事. 主要利用以下技术点 - Retrofit2 Retrof…
四大组件 1.Service Android四大组件-Service Android-远程Service Service 动态更新 UI 2.Activity Android四大组件-Activity Android-Activity启动流程 Android - ANR小结 Activity 启动模式 3.Content Provider Android四大组件-Content Provider android - SQLite 数据库 4.Broadcast Receiver Android四…
这一节主要讲如何在手机端使用HTTP协议和服务器端进行网络交互,并对服务器返回的数据进行解析,这也是Android中最常用的网络技术. 一.WebView的用法 有时候我们可能会碰到比较特殊的需求,比如说要求在应用程序里展示一些网页,相信每个人都知道,加载和显示网页通常都是浏览器的任务,但是需求里又明确指出,不允许打开系统浏览器,而我们当然也不可能自己去编写一个浏览器出来,这时候该怎么办呢?为了解决这个问题,Android为我们提供了一个WebView控件,借助它我们就可以在自己的应用程序里嵌入…
RxJava是什么 a library for composing asynchronous and event-based programs using observable sequences for the Java VM解释:一个对于构成使用的Java虚拟机观察序列异步和基于事件的程序库 RxJava 是一个响应式编程框架,采用观察者设计模式.所以自然少不了 Observable 和 Subscriber 这两个东东了.RxJava 是一个开源项目,地址:https://github.c…