Android HttpHostConnectException-如何正确捕获它?

Android HttpHostConnectException-如何正确捕获它?,android,androidhttpclient,Android,Androidhttpclient,我有一个HttpHostConnectException。。。这没关系,因为服务器处于脱机状态。因此,我想设法捕捉这种情况下的异常,服务器将关闭 但是如果我使用 catch (HttpHostConnectException e){ e.printStackTrace(); } 没有任何事情发生,异常将终止进程。那么,如何捕获“无法访问”的服务器呢?感谢您的时间和帮助;) 调用e.printStackTrace()将终止您的应用程序,因为未处理异常 e.printSta

我有一个
HttpHostConnectException
。。。这没关系,因为服务器处于脱机状态。因此,我想设法捕捉这种情况下的异常,服务器将关闭

但是如果我使用

catch (HttpHostConnectException e){
            e.printStackTrace();
}

没有任何事情发生,异常将终止进程。那么,如何捕获“无法访问”的服务器呢?感谢您的时间和帮助;)

调用
e.printStackTrace()将终止您的应用程序,因为未处理异常

e.printStackTrace()
会将异常打印到logcat上,并显示错误或使应用程序崩溃

您可以将异常显示为字符串,或者将静态文本设置为服务器不可访问

catch (HttpHostConnectException e)

{

 Toast.makeText(getApplicationContext(), "Server Unreachable ", Toast.LENGTH_LONG).show();

}
如果您想显示由使用导致的实际问题/异常是什么

catch (HttpHostConnectException e)

{

 Toast.makeText(getApplicationContext(), "Connection Timeout Reason "+string.ValueOf(e), Toast.LENGTH_LONG).show();

}
通过这样做,你的应用程序将不会自杀并继续下一行代码

你也可以这样做

Log.v(locat,  exception.toString());

“异常未处理”的确切含义是什么?我怎么处理?现在它开始工作了,因为当执行一个exoption时,我取消了http请求所在的异步任务。但是printStackTrace()仍在运行。@Bolic异常正在打印到stacktrace,然后应用程序将关闭。一旦你的应用程序收到异常,你就将其打印到堆栈中,而不对异常堆栈执行任何操作。看来我在java方面并不像我想的那么强硬。我的看法是,如果我抓住了这个例外,那就很好了。但是如果我抓到一个,我必须处理它。@Bolic没问题:)如果有异常,只需通过敬酒的方式让用户知道,这样他就知道在服务器重新联机之前不会有结果