[Android Exception 1A] -com.android.volley.NoConnectionError: java.io.InterruptedIOException
- - ::47.470 -/com.tongyan.tutelage W/System.err: com.android.volley.NoConnectionError: java.io.InterruptedIOException
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: Caused by: java.io.InterruptedIOException
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okio.Deadline.throwIfReached(Deadline.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okio.Okio$.write(Okio.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okio.RealBufferedSink.flush(RealBufferedSink.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okhttp.internal.http.HttpConnection.flush(HttpConnection.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okhttp.internal.http.HttpTransport.flushRequest(HttpTransport.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.volley.toolbox.HurlStack.performRequest(HurlStack.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:)
- - ::47.470 -/com.tongyan.tutelage W/System.err: ... more
这个错误是你在不经意间导致的,或者是没有很好的去熟悉volley包的api导致的。
- public void onRequest(String url){
- if(isIntnetConn){
- StringRequest request = new StringRequest(url, new Response.Listener<String>() {
- @Override
- public void onResponse(String s) {
- mListener.onSuccess(s);
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError volleyError) {
- String errorMsg = "";
- if(volleyError instanceof TimeoutError) {
- mListener.onError();
- } else if(volleyError instanceof ServerError) {
- mListener.onError();
- } else {
- mListener.onError();
- errorMsg = mContext.getResources().getString(R.string.request_error);
- }
- }
- });
- request.setRetryPolicy(new DefaultRetryPolicy( * , , 1.0f));//设置超时时间
- mQueue.add(request);
- //mQueue.start();
- }else{
- Toast.makeText(mContext, "当前的网络连接不可用", Toast.LENGTH_SHORT).show();
- mListener.onIntnetDisConn();
- }
- }
只是因为加了下面这句,bug如期而至。
- //mQueue.start();
其实,在RequestQueue实例化的时候,就已经有start了。
- private RequestQueue mQueue;
- private Context mContext;
- public HttpServiceUtils(HttpResquestListener listener,Context context){
- mListener = listener;
- mContext = context;
- mQueue = Volley.newRequestQueue(context);
- }
- public class Volley {
- private static final String DEFAULT_CACHE_DIR = "volley";
- public Volley() {
- }
- public static RequestQueue newRequestQueue(Context context, HttpStack stack) {
- File cacheDir = new File(context.getCacheDir(), "volley");
- String userAgent = "volley/0";
- try {
- String network = context.getPackageName();
- PackageInfo queue = context.getPackageManager().getPackageInfo(network, );
- userAgent = network + "/" + queue.versionCode;
- } catch (NameNotFoundException var6) {
- ;
- }
- if(stack == null) {
- if(VERSION.SDK_INT >= ) {
- stack = new HurlStack();
- } else {
- stack = new HttpClientStack(AndroidHttpClient.newInstance(userAgent));
- }
- }
- BasicNetwork network1 = new BasicNetwork((HttpStack)stack);
- RequestQueue queue1 = new RequestQueue(new DiskBasedCache(cacheDir), network1);
- queue1.start();
- return queue1;
- }
- public static RequestQueue newRequestQueue(Context context) {
- return newRequestQueue(context, (HttpStack)null);
- }
- }
queue1.start(); 已经在实例化RequestQueue的时候,就被调用了。
https://stackoverflow.com/questions/31158858/random-com-android-volley-noconnection-error-java-io-interruptedioexception-st/31181611#31181611
[Android Exception 1A] -com.android.volley.NoConnectionError: java.io.InterruptedIOException的更多相关文章
- 严重: Exception loading sessions from persistent storage Java.io.EOFException
tomcat启动时报此异常,但web页均能正常运行:对程序影响不大. /*具体原因时tomcat--work--(你当前运行的工程名)--session.ser*/删除即可解决 分析: EOFExce ...
- java.io.EOFException
错误代码如下: 严重: IOException while loading persisted sessions: java.io.EOFException java.io.EOFException ...
- org.apache.hadoop.ipc.RemoteException(java.io.IOException)
昨晚突然之间mr跑步起来了 jps查看 进程都在的,但是在reduce任务跑了85%的时候会抛异常 异常情况如下: 2016-09-21 21:32:28,538 INFO [org.apache.h ...
- tomcat启动报错:IOException while loading persisted sessions: java.io.EOFException.
tomcat启动错误代码: 严重: IOException while loading persisted sessions: java.io.EOFException java.io.EOFExce ...
- tomcat启动时报:IOException while loading persisted sessions: java.io.EOFException的解决方案
错误代码如下: 严重: IOException while loading persisted sessions: java.io.EOFException java.io.EOFException ...
- hive运行query语句时提示错误:org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.io.IOException:
hive> select product_id, track_time from trackinfo limit 5; Total MapReduce jobs = 1 Launching Jo ...
- java IO流全面总结
流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作. Ja ...
- tomcat启动时报:IOException while loading persisted sessions: java.io.EOFException的解决方案 ZT
错误代码如下: 严重: IOException while loading persisted sessions: java.io.EOFException java.io.EOFException ...
- 启动项目时出现java.io.EOFException异常。
错误: 2018-4-18 10:55:54 org.apache.catalina.session.StandardManager doLoad 严重: IOException while load ...
随机推荐
- activiti 任务节点 处理人设置【转】
转自http://blog.csdn.net/qq_30739519/article/details/51225067 1.1.1. 前言 分享牛原创(尊重原创 转载对的时候第一行请注明,转载出处来自 ...
- Android—菜单
layout文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...
- ThinkPHP使用SQL函数进行查询
//SQL函数查询 $products=$pro->where(array("FIND_IN_SET('".$type."',type)",'num'=& ...
- IntelliJ IDEA 开发前的设置
1.IntelliJ IDEA 显示行号方法 设置方法:File->Settings->Editor->General->Appearance->Show line nu ...
- 拉动滚动条追加内容,无限延伸document高度 $(window).scroll(function(){if($(window).scrollTop() + $(window).height() == $(document).height()) { $("body").append(html) } })
$(document).ready(function() { // endless scrolling $(window).scroll(function() { if($(window).scrol ...
- JSBinding + SharpKit / 初体验:下载代码及运行Demo
QQ群:189738580 以下是群主维护的JSB版本: git地址:https://github.com/qcwgithub/qjsbunitynew.git插件源码地址(不包含SpiderMonk ...
- C# 数组,ArrayList与List对象的区别
在C#中,当我们想要存储一组对象的时候,就会想到用数组,ArrayList,List这三个对象了.那么这三者到底有什么样的区别呢? 我们先来了解一下数组,因为数组在C#中是最早出现的. 数组 数组有很 ...
- 怎么用ABBYY创建属于自己的PDF
怎么创建一份属于自己的PDF文档呢?由于PDF格式文件具有跨平台.支持超长文件.安全可靠性高等诸多优势,在日常办公学习中应用越来越广泛.而随着技术的发展,各种办公软件也对PDF提供越来越多的支持,但P ...
- unity, monoDevelop ide 代码提示不起作用的解决方法
monoDevelop ide 代码提示不起作用,可能是因为ide里索引了一些不存在的文件,检查一下solution窗口里是否有文件变红,如下图中springControlEx.cs.将变红的文件re ...
- 【转】JS跨域(ajax跨域、iframe跨域)解决方法及原理详解(jsonp)
这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...