- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android网络请求框架之Retrofit
Android网络请求框架之Retrofit Retrofit之前言 Retrofit是square家族开源系列的精品之一,是一个简单好用的网络请求框架,基于REST的架构风格,本框架的主要开发人Jake Wharton想必大家也有所耳闻,他也是REST的忠实拥护者和践行者。 引入开源框架,大部分开发者的目的是为了更快速的开发应用,省掉一些复杂的逻辑处理,Retrofit封装了网络请求,让开发者面向接口去请求服务,使用注解和代理去发起真正的请求,让开发者省掉所有网络请求的代码。你不用担心android6.0不支持httpclient方式的请求,你也不用引入gson去转换数据与对象,所有的这一切,Retrofit都已帮你完美实现。 Retrofit之用法 声明: 1.以下例子是基于1.9.0版本的,后面还有2.0.0版的,下一篇文章我将给大家展示他们之间的区别; 2.列子代码是基于AndroidStudio的。 1.在build.gradle文件里引入Retrofit需要的版本com.squareup.retrofit:retrofit:1.9.0,当然,如果了解RxJava和RxAndroid的童鞋也可以引入 io.reactivex:rxjava:1.0.14 、io.reactivex:rxandroid:1.0.1,配合Retrofit使用会更加好用。 2.实现Callback接口 public abstract class RCallbackT implements retrofit.CallbackT { @Override public abstract void success(T t, Response response); @Override public void failure(RetrofitError error) { Global.ProcException(error); } } 看到泛型T,估计大家就知道意味着什么了吧?我们可以直接指定返回的对象了,不用再去解析json数据了! 3.封装请求的载体 public class RestAdapterFactory { private HashMapString, SoftReferenceRestAdapter adapters; private static volatile RestAdapterFactory maker; private RestAdapterFactory() { adapters = new HashMap(); } /** * 获取创建RestAdapter的工厂 * * @return */ public synchronized static RestAdapterFactory getInstance() { synchronized (RestAdapterFactory.class) { if (null == maker) { synchronized (RestAdapterFactory.class) { maker = new RestAdapterFactory(); } } } return maker; } /** * 创建RestAdapter * * @param url * @return */ public synchronized RestAdapter build(final String url) { //这就是发起请求的对象 RestAdapter adapter = null==adapters.get(url)?null:adapters.get(url).get(); if (null == adapter) { final CellInfo cellInfo = Utils.getCellInfo(); //添加一些header RequestInterceptor requestInterceptor = new RequestInterceptor() { @Override
您可能关注的文档
- 八年级下册Unit-6-An-old-man-tried-to-move-the-mountains精编讲义.doc
- 西安石油大学《大学英语(大一上册)》期末试题A及其答案.doc
- 名、冠、数、代、形、副1.doc
- 数制转换问题(完整).doc
- 美国社会学现状.doc
- 切方机中英文术语.doc
- 八年级下学期 Unit 5 If you go to the party, you’ll have a great time.doc
- 新目标英语中考复习一轮学案(九年级全册Unit5-6).doc
- Unit 14 I remember meeting all of you in Grade 7 能力提升专练 (新版)人教新目标版.doc
- 2016名师测控人教版八年级英语下册Unit 14 I remember meeting all of you in Grade -71.docx
文档评论(0)