Internet连接错误

Arc*_*rci 16 connection android exception-handling exception

我有一个连接到Internet的Android应用程序.我正在捕获所有可能的连接方案,并注意到当我没有Internet连接时,UnknownHostException就是thrown.我在这里有点困惑,因为获得UnknownHostException意味着应用程序能够连接到Internet但无法找到给定的URL.

我得到了正确的例外吗?你能解释一下我为什么要UnknownHostException这个?

此外,您能告诉这些场景的具体例外情况:

  • 没有互联网连接时.
  • 无法找到URL时.
  • 当请求超时时.
  • 当网站关闭时.
  • 访问被拒绝时.

如果你能给我更多场景和例外,我也将不胜感激.我必须捕获所有可能的连接并根据连接类型错误显示最合适的消息.

use*_*421 27

获取UnknownHostException意味着应用程序能够连接到Internet

不,不.这意味着应用程序无法解析主机名.这可能是因为主机名不存在,或者因为它无法连接到Internet来解析它.

没有互联网连接时.

没有特别的例外."没有互联网连接"没有明确的含义.条件解析为以下其他故障模式之一.

无法找到URL时.

如果找不到主机,UnknownHostException.如果找不到URL的内容部分,则为HTTP 404.

当请求超时时.

ConnectException将'connection timed out'作为消息,或者SocketTimeoutException如果它是读取超时.

当网站关闭时.

ConnectException 以"连接被拒绝"作为消息.

访问被拒绝时.

HTTP 403.