前言: 最近在将自己写的烂代码重构,以前使用的网络请求全是基于apache的HttpClient,简单使用还好,使用多了发现重复代码太多,而且每次使用都很繁琐,因此在网上找了半天网络请求的相关类库,最后还是确定使用Volley,于是现在记个使用笔记: Volley几个主要功能: 1. 普通String请求: 既然使用了网络请求,那么网络权限是必不可少的,在AndroidManifest.xml中添加: <uses-permission android:name="android.permi…
基于Android Volley的网络请求工具. 一.说明 AndroidVolley,Android Volley核心库及扩展工程.AndroidVolleySample,网络请求工具示例工程.Release,jar包.直接下载 二.Volley基本处理流程: 1.应用初始化Volley.2.Volley创建一个RequestQueue.NetworkDispatcher组及Network.3.RequestQueue即一个Request队列,RequestQueue会创建一个Executor…
自己学习android也有一段时间了,在实际开发中,频繁的接触网络请求,而网络请求的方式很多,最常见的那么几个也就那么几个.本篇文章对常见的网络请求库进行一个总结. HttpUrlConnection 最开始学android的时候用的网络请求是HttpUrlConnection,当时很多东西还不知道,但是在android 2.2及以下版本中HttpUrlConnection存在着一些bug,所以建议在android 2.3以后使用HttpUrlConnection,之前使用HttpClient.…
备注: 本笔记是参照了 http://blog.csdn.net/ysh06201418/article/details/46443235  学习之后写下的 简介:  Volley是google官网退出的一种流行的网络请求框架,封装了Android繁琐的httpclient和HttpUrlConnection,使得我们不必要写更多繁琐的代码就能够很好的实现网络通信,同时AsyncHttpClient和ImageLoader集成于一身,既可以像AsyncHttpClient一样非常简单地进行HTT…
自己学习android也有一段时间了,在实际开发中,频繁的接触网络请求,而网络请求的方式很多,最常见的那么几个也就那么几个.本篇文章对常见的网络请求库进行一个总结. HttpUrlConnection 最开始学android的时候用的网络请求是HttpUrlConnection,当时很多东西还不知道,但是在android 2.2及以下版本中HttpUrlConnection存在着一些bug,所以建议在android 2.3以后使用HttpUrlConnection,之前使用HttpClient.…
近期正在做Android网络应用的开发,使用了android网络请求方面的知识.如今向大家介绍网络请求方面的知识.我们知道android中向server端发送一个请求,(这就是我们通常所说的POST请求),我们要发送一个完整的URL.然后server端接收到这个URL,对这个URL进行特定的解析.就是对URL进行解析,转化为JSON数据,然后,我们仅仅要处理这个JSON数据就能够了. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl0aWFucGV…
项目地址:https://github.com/jeasonlzy 该库是封装了okhttp的网络框架,可以与RxJava完美结合,比Retrofit更简单易用.支持大文件上传下载,上传进度回调,下载进度回调,表单上传(多文件和多参数一起上传),链式调用,可以自定义返回对象,支持Https和自签名证书,支持cookie自动管理,支持四种缓存模式缓存网络数据,支持301.302重定向,扩展了统一的上传管理和下载管理功能 其中Demo中用到的图片选择是我的另一个开源项目,完全仿微信的图片选择库,自带…
今天要说的干货是:以Kotlin,在MVP模式下(OKHttp和 Retrofit+RxJava)网络请求两种实现方式的一个小案例,希望对大家有所帮助,效果图: Retrofit是Square公司开发的一款针对Android网络请求的一个当前很流行的网络请求库.可参考博客看详细介绍:Android开发之Retrofit+RxJava的使用 完成以上功能需引入: compile "com.android.support:appcompat-v7:$support_version" com…
最近遇到了android 在慢网络下面请求服务器报 java.net.SocketException: recvfrom failed: ECONNRESET (Connection reset by peer) java.net.SocketTimeoutException: failed to connect to mobile2.itanzi.com/) after 15000ms java.net.SocketTimeoutException: timeout java.net.Unkn…
/*post请求*/public void dostringVolleypost(){ /*第一步,创建请求队列*/ queue = Volley.newRequestQueue(this); /*第二步,创建请求对象*/ StringRequest stringRequest = new StringRequest( Request.Method.POST, //当改成post方法时:Request.Method.POST "http://apis.baidu.com/txapi/tiyu/t…
public class VolleyActivity extends AppCompatActivity { WebView webView; Button button; RequestQueue queue = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_vol…
同步请求和异步请求: 同步请求会阻塞主线程:不会开启新的线程,还是主线程,所以直到请求成功后,才能执行其它操作. 异步请求不会阻塞主线程.开启新的线程去请求服务器,而不影响用户的交互操作等其他动作. 使用NSURLConnection发送同步请求和异步请求: 同步请求: 异步请求:(block回调方式)——请求的数据通过block返回 异步请求:(delegate方式)——请求的数据在重写的代理方法里返回 需要注意的是: - (void)connection:(NSURLConnection *…
对Retrofit已经使用了一点时间了,是时候归纳一下各种网络请求的service了. 下面分为GET.POST.DELETE还有PUT的请求,说明@Path.@Query.@QueryMap.@Body.@Field的用法. 初始化Retrofit String BASE_URL = "http://102.10.10.132/api/"; //主机地址 Retrofit retrofit = new Retrofit.Builder() .baseUrl(BASE_URL) .bu…
需求 有这样一个列表数据,它包含了商店+订单的信息,获取订单列表时,订单实体中会包含商店的 ID,而列表显示时需要商店的名称和 logo,这时候就需要进行嵌套串行网络请求了. 关键词 flatMap .缓存 .Retrofit.RxJava 动手 (1)使用 Retrofit 定义网络接口 // RemoteService.java // 请求订单信息 @POST("/order/v1/order_history") Single<List<OrderResponse>…
对Retrofit已经使用了一点时间了,是时候归纳一下各种网络请求的service了. 下面分为GET.POST.DELETE还有PUT的请求,说明@Path.@Query.@QueryMap.@Body.@Field的用法. 初始化Retrofit String BASE_URL = "http://102.10.10.132/api/"; Retrofit retrofit = new Retrofit.Builder() .baseUrl(BASE_URL) .build();…
对Retrofit已经使用了一点时间了,是时候归纳一下各种网络请求的service了. 下面分为GET.POST.DELETE还有PUT的请求,说明@Path.@Query.@QueryMap.@Body.@Field的用法. 初始化Retrofit String BASE_URL = "http://102.10.10.132/api/"; Retrofit retrofit = new Retrofit.Builder() .baseUrl(BASE_URL) .build();…
转:http://blog.csdn.net/guolin_blog/article/details/12452307 Android中主要提供了两种方式来进行HTTP操作,HttpURLConnection和HttpClient. 这两种方式都支持HTTPS协议.以流的形式进行上传和下载.配置超时时间.IPv6.以及连接池等功能. HttpClient DefaultHttpClient和它的兄弟AndroidHttpClient都是HttpClient具体的实现类,它们都拥有众多的API,而…
我们在主机上面运行了Burp或者fiddler,那么代理已经监听在本机的8080端口了. 那么我们需要在模拟器中进行如下设置: 1.在设置中,长按当前连接的wifi网络,弹出如下: 2. 点击修改网络: 注意红框的几个地方. 3.填写代理服务器的IP和端口 Android模拟器中ip要填写10.0.2.2,genymotion模拟器中ip要填写:10.0.3.2,端口就是burp或者fiddler监听的端口,我这里是8080,然后点击保存 现在随便浏览一个东西,burp中应该就可以抓到包了.…
我们在主机上面运行了Burp或者fiddler,那么代理已经监听在本机的8080端口了. 那么我们需要在模拟器中进行如下设置: 1.在设置中,长按当前连接的wifi网络,弹出如下: 2. 点击修改网络: 注意红框的几个地方. 3.填写代理服务器的IP和端口 Android模拟器中ip要填写10.0.2.2,genymotion模拟器中ip要填写:10.0.3.2,端口就是burp或者fiddler监听的端口,我这里是8080,然后点击保存 现在随便浏览一个东西,burp中应该就可以抓到包了.…
Map<String, String> params = new HashMap<String, String>(); params.put("fromUser", "lesliefang"); params.put("toUser", "xiaojun"); JsonObjectRequest newMissRequest = new JsonObjectRequest( Request.Method…
首先使用Volley类创建 RequestQueue queue = Volley.newRequestQueue(this);  Making GET Requests final String url = "http://httpbin.org/get?param1=hello"; // prepare the Request JsonObjectRequest getRequest = new JsonObjectRequest(Request.Method.GET, url,…
看了好多的博客,终于弄清楚了Rxjava和Retrofit,给大家推荐几个不错的文章: https://gank.io/post/56e80c2c677659311bed9841 这个文章是只用Retrofit,然后是在Retofit的基础上使用Rxjava; http://gank.io/post/560e15be2dca930e00da1083   (给 Android 开发者的 RxJava 详解) http://blog.csdn.net/xiaonaihe/article/detail…
一.Volley简介 Volley网络框架是Google公司在2013年发布的一款Android平台上的网络请求通信库.以下是对Volley的简单归纳. Volley的优点: 使网络通信更快.更简单.更健壮,用Volley开发的话,开发效率会得到很大提升,开发出来的网络模块的稳定性也会非常高 Get.Post网络请求及网络图像的高效率异步处理请求,Volley帮我们实现了网络请求的异步化,而且它的Get和Post请求也是非常高效的 对网络请求进行排序.优先级处理 网络请求的缓存,当网络比较缓慢时…
使用volley进行网络请求:需先将volley包导入androidstudio中 File下的Project Structrue,点加号导包 volley网络请求步骤: 1. 创建请求队列       RequestQueue queue = Volley.newRequestQueue(this); 2.创建请求对象(3种) StringRequest request = new StringRequest(“请求方法”,“请求的网络地址”,“成功的网络回调”,“失败的网络回调”): Ima…
Volley源码解析(二) 没有缓存的情况下直接走网络请求源码分析 Volley源码一共40多个类和接口.除去一些工具类的实现,核心代码只有20多个类.所以相对来说分析起来没有那么吃力.但是要想分析透源码还是需要先宏观后微观的分支线式地来跟踪源码的来龙去脉.这才能把源码分析清楚.分析透彻.并且在了解源码的基础上根据自己的需求进行相应的改造. Volley这个系列分析源码的人很多了.但是分析完代码能够带入实际工程场景进行改造改良使其适应自己工程的博文还是很少的.这里会按照先宏观后围观,先简单后复杂…
之前一直使用的Volley作为网络请求框架,它是Google 在2013年的I/O大会 上,发布的.Volley是Android平台上的网络通信库,能使网络通信更快,更简单,更健壮,同时扩展性很强.在用它之前我进行了简单的封装,因为Volley默认的请求线程生命周期伴随着Activity的周期,这有时并不能满足项目需要,so上代码: <span style="font-size:14px;"><span style="font-size:14px;"…
目前已经有不少Android客户端在使用Retrofit+RxJava实现网络请求了,相比于xUtils,Volley等网络访问框架,其具有网络访问效率高(基于OkHttp).内存占用少.代码量小以及数据传输安全性高等特点. Retrofit源码更是经典的设计模式教程,笔者已在之前的文章中分享过自己的一些体会,有兴趣的话可点击以下链接了解:<Retrofit源码设计模式解析(上)>.<Retrofit源码设计模式解析(下)> 但在具体业务场景下,比如涉及到多种网络请求(GET/PU…
xamarin android中网络请求的框架非常多,在项目中使用的是第三方的一个网络请求框架restsharp,应该是github上.net网络请求最多star的框架,没有之一.这里就简单汇总了其他的一些网络请求的例子,主要还是分为android和.net两种平台. 下面就用.net中的httpwebrequest.httpclient.restsharp和android中的httpURLConnection.okhttp实现一个get方式获取图片.post方式提交表单,适合新手入门看看总结一…
Retrofit是Square公司开发的一款针对Android网络请求的框架,Retrofit2底层基于OkHttp实现的,OkHttp现在已经得到Google官方认可,大量的app都采用OkHttp做网络请求,其源码详见 OkHttp Github (https://github.com/square/okhttp) . 本文全部是在Retrofit2.0+版本基础上论述,所用例子全部来自豆瓣Api首先先来看一个完整Get请求是如何实现: 创建业务请求接口,具体代码如下: public int…
在前两篇博文中已经做了铺垫,下面咱们就可以用前面介绍过的内容开始做一个小项目了(项目中会用到Afinal框架,不会用Afinal的童鞋可以先看一下上一篇博文),正所谓麻雀虽小,五脏俱全,这在里我会尽量的将前期的项目搭建做的相对实用一些,以便后期可以有效的实现团队协作和项目维护.一开始可能会看起来麻烦些,可能会觉得还不如直接用简单的方式去实现来的方便,磨刀不误砍柴工嘛,要想后期开发效率高一些,前期就不要图省事了. 一个项目肯定不是一蹴而就的,咱们一步一步来,本篇博文先详细介绍项目搭建.通过url地…