Retrofit学习(一)

2016-06-02  本文已影响286人  seph_von

写在前面##

其实一直都没有写博客的习惯,借着这次公司内部分享的机会,开始写博客,希望以后渐渐养成习惯。也方便以后自己忘记的时候可以再重温一下。

先讲点周边,介绍下Jake Wharton大神,也就是Retrofit的作者之一。Jake Wharton在Android开发领域就如同传奇一般(崇拜脸),在github上贡献了N个开源项目,大名鼎鼎的Dragger,ButterKnife都是出自他的手笔。好像都是为了解耦而生的。另外还有一个很酷炫的工具就是Scalpel,通过三维效果查看APP的View Tree。这个以后有机会一定要了解下。

好,下面切回正题。


Retrofit是什么##

Retrofit是什么,官方只用了一句话来概述:一个在Android和Java上类型安全的REST的客户端。不是很明白,通俗点理解就是它是一个网络请求封装库,通过注解的方式来指定请求类型,请求接口,请求参数,请求头...


Retrofit的导入##

Retrofit 要求java 7 和 Android 2.3 以上版本。


Retrofit 声明请求API##

Retrofit官网上已经罗列了各请求是如何使用的,这里用我自己写的例子再简单说明下。主要是为了练手,也可以直接看官网。

获取到ILoginService的对象之后再调用login的方法来生成一个Call的对象。
Call<HttpResult<User>> mCall = service.login(bean);
最后通过Call的execute方法或者enqueue方法,发起同步或异步请求。

文件下载有点鸡肋,下载之后输入输出流还是要重新建立线程。


小结##

通过以上的介绍,应该已经可以在项目中使用了。这里只是对Retrofit的一些常用的方法进行了简单的介绍;还有一些细节上的注意点,以及原理的介绍会在后续的篇幅里再进行记录。

参考文档###

Retrofit官网: http://square.github.io/retrofit/
某大神的博客:https://futurestud.io/blog/retrofit-getting-started-and-android-client
鸿洋大神的博客:http://blog.csdn.net/lmj623565791/article/details/51304204

上一篇 下一篇

猜你喜欢

热点阅读