Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
即使在设置AsyncHttpClient超时之后,Android应用程序也会超时_Android_Timeout_Android Async Http - Fatal编程技术网

即使在设置AsyncHttpClient超时之后,Android应用程序也会超时

即使在设置AsyncHttpClient超时之后,Android应用程序也会超时,android,timeout,android-async-http,Android,Timeout,Android Async Http,即使设置了超时,我的应用程序也会超时。请参阅下文: final int DEFAULT_TIMEOUT = 200000 * 1000000000; // Make RESTful webservice call using AsyncHttpClient object AsyncHttpClient client = new AsyncHttpClient(); client.setTimeout(DEFAULT_TIMEOUT); //client.ge

即使设置了超时,我的应用程序也会超时。请参阅下文:

    final int DEFAULT_TIMEOUT = 200000 * 1000000000;
 // Make RESTful webservice call using AsyncHttpClient object
     AsyncHttpClient client = new AsyncHttpClient();
    client.setTimeout(DEFAULT_TIMEOUT);
     //client.get("http://182.188.33.27:9009/useraccount/login/dologin",params ,new AsyncHttpResponseHandler() {
    client.get("http://koha.cdtl.com.sg/cgi-bin/koha/ilsdi.pl?service=AuthenticatePatron",params ,new AsyncHttpResponseHandler() {
         // When the response returned by REST has Http response code '200'
         @Override
         public void onSuccess(String response) {
             // Hide Progress Dialog
             prgDialog.hide();
             try {
                     // JSON Object
                     JSONObject obj = new JSONObject(response);
                     // When the JSON response has status boolean value assigned with true
                     if(obj.getBoolean("status")){
                         Toast.makeText(getApplicationContext(), "You are successfully logged in!", Toast.LENGTH_LONG).show();
                         // Navigate to Home screen
                         navigatetoHomeActivity();
                     } 
                     // Else display error message
                     else{
                         errorMsg.setText(obj.getString("error_msg"));
                         Toast.makeText(getApplicationContext(), obj.getString("error_msg"), Toast.LENGTH_LONG).show();
                     }
             } catch (JSONException e) {
                 // TODO Auto-generated catch block
                 Toast.makeText(getApplicationContext(), "Error Occured [Server's JSON response might be invalid]!", Toast.LENGTH_LONG).show();
                 e.printStackTrace();

             }
         }
         // When the response returned by REST has Http response code other than '200'
         @Override
         public void onFailure(int statusCode, Throwable error,
             String content) {
             // Hide Progress Dialog 
             prgDialog.hide();
             // When Http response code is '404'
             if(statusCode == 404){
                 Toast.makeText(getApplicationContext(), "Requested resource not found", Toast.LENGTH_LONG).show();
             } 
             // When Http response code is '500'
             else if(statusCode == 500){
                 Toast.makeText(getApplicationContext(), "Something went wrong at server end", Toast.LENGTH_LONG).show();
             } 
             // When Http response code other than 404, 500
             else{
                 Toast.makeText(getApplicationContext(), "Unexpected Error occcured! [Most common Error: Device might not be connected to Internet or remote server is not up and running]", Toast.LENGTH_LONG).show();
             }
         }
     });
奇怪的是,有时它会显示出想要的结果:

Toast.makeText(getApplicationContext(),“您已成功登录!”,Toast.LENGTH\u LONG.show()

但主要是:

Toast.makeText(getApplicationContext(),“发生意外错误![最常见的错误:设备可能未连接到Internet或远程服务器未启动并运行]”,Toast.LENGTH_LONG).show()

我也尝试过清理和重建这个项目,但没有帮助

欢迎提出任何建议


最后,感谢您,我们成功地解决了所有不同的错误场景,包括error.getMessage()、error.toString()和error.getCause()的组合

Toast.makeText(getApplicationContext(),“状态代码:”+statusCode+“errmsg:”+error.getMessage(),Toast.LENGTH_LONG).show();
当前,您正在显示自定义消息,首先检查错误状态代码和错误内容,有许多状态代码您只处理两种情况

最后,设法找出所有不同的错误场景,只是error.getMessage()、error.toString()和error.getCause()的组合

Toast.makeText(getApplicationContext(),“状态代码:”+statusCode+“errmsg:”+error.getMessage(),Toast.LENGTH_LONG).show();
当前您正在显示自定义消息,首先检查错误状态代码和错误内容,有许多状态代码您只处理两种情况

Logcat:12-21 03:41:15.127 25254-25531/com.prgguru.example I/System.out:[CDS]close[38467]12-21 03:41:15.127 25254-25531/com.prgguru.example I/System.out:ex:java.net.SocketTimeoutException 12-21 03:41:15.128 25254-25531/com.prgguru.example W/System.err:java.net.SocketTimeoutException 12-21 03:41:15.128 25254-25531/com.prgguru.example W/System.err:at java.net.plainsockettimempl.read(PlainSocketImpl.java:497)12-21 03:41:15.128 25254-25531/com.prgguru.example W/System.err:at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:42)Logcat:12-21 03:41:15.127 25254-25531/com.prgguru.example I/System.out:[CDS]关闭[38467]12-21 03:41:15.127 25254-25531/com.prgguru.example I/System.out:ex:java.net.SocketTimeoutException 12-21 03:41:15.128 25254-25531/com.prgguru.example W/System.err:java.net.SocketTimeoutException 12-21 03:41:15.128 25254-25531/com.prgguru.example W/System.err:at java.net.plainsockettimempl.read(PlainSocketImpl.java:497)12-21 03:41:15.128 25254-25531/com.prgguru.example W/System.err:at java.net.PlainSocketImpl.access$000(PlainSocketImpl.java:42)返回的状态代码为0。我想是因为请求超时了。谢谢Vinayak的建议。在重新编写代码后,我能够解析它,代码中显示了许多这样的消息,我认为它进入了错误的循环。返回的状态代码为0。我想是因为请求超时了。谢谢Vinayak的建议。在重新编写代码之后,我能够解析它,我在代码中显示了许多这样的消息,我认为它进入了错误的循环。