android– 在异步Http客户端上设置超时

android– 在异步Http客户端上设置超时,第1张

概述即时通讯使用异步Http客户端,可在此处找到:http://loopj.com/android-async-http/并且除了大约每10个请求中的大约1个我最终给我一个无限进度对话框,我认为无论出于什么原因都没有返回任何类型的响应,因为我已经编写代码来解除onSuccess中的对话框和onFailure所以我有点困惑如何发

即时通讯使用异步http客户端,可在此处找到:http://loopj.com/android-async-http/

并且除了大约每10个请求中的大约1个我最终给我一个无限进度对话框,我认为无论出于什么原因都没有返回任何类型的响应,因为我已经编写代码来解除onSuccess中的对话框和onFailure所以我有点困惑如何发生这种情况.

这是我设置请求的代码:

  public static voID post(String token,String url, RequestParams params, AsynchttpResponseHandler responseHandler) {     Log.i(token,"token");      clIEnt.addheader("token", token);      clIEnt.setTimeout(3000);      clIEnt.post(url, params, responseHandler);  }

这是我覆盖onSuccess和onFailure的地方:

@OverrIDe            public voID onFailure(Throwable arg0, String arg1) {                // Todo auto-generated method stub                super.onFailure(arg0, arg1);                pdialog.dismiss();                Log.i("Failed to login", arg1.toString());                Toast.makeText(getActivity(), arg1.toString() , Toast.LENGTH_LONG).show();            }            @OverrIDe            public voID onSuccess(final JsONObject Json) {                pdialog.dismiss();    }

解决方法:

该库似乎正在执行您希望它执行的 *** 作,来自AsynchttpClIEnt类的setTimeout代码

public voID setTimeout(int timeout){    final httpParams httpParams = this.httpClIEnt.getParams();    ConnManagerParams.setTimeout(httpParams, timeout);    httpconnectionParams.setSoTimeout(httpParams, timeout);    httpconnectionParams.setConnectionTimeout(httpParams, timeout);}

如果它不起作用,那么最好报告问题here

总结

以上是内存溢出为你收集整理的android – 在异步Http客户端上设置超时全部内容,希望文章能够帮你解决android – 在异步Http客户端上设置超时所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1117854.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存