当前位置: 首页 > 知识库问答 >
问题:

频繁的HttphostConnectException

谭昊乾
2023-03-14

我最近把我的应用上传到了谷歌Playstore。我使用错误报告器跟踪崩溃。应用程序工作正常,但经常出现HttpHostConnectException。在进行每次网络通话之前,我都会检查互联网连接。造成这一例外的原因还有其他原因吗?如何避免?

附言:在测试/调试我的应用程序时,我从来没有遇到过这个异常。

共有2个答案

羊慈
2023-03-14

我使用AsyncHttpClient来处理我所有的网络调用。它完美地处理了我的情况。它在获取HttphostConnectException时直接使用onFailure()。

陶胤运
2023-03-14

当无法与特定端口上的远程主机建立连接时,会引发HttpHostConnectException。

每次打网络电话之前,我都会检查网络连接。

检查互联网连接并不是确定主机可达的万无一失的方法。在许多情况下,如使用wifi,设备连接到您的路由器,而路由器没有连接到互联网。在这种情况下,使用ConnectivityManager之类的类检查internet连接会返回true,但实际的连接是false。

解决方案是使用任何超文本传输协议方法检查您的主机是否真的可以访问。

public boolean isInternetAvailable() {
    try {
        InetAddress ipAddr = InetAddress.getByName("google.com"); //You can replace it with your name

        if (ipAddr.equals("")) {
            return false;
        } else {
            return true;
        }

    } catch (Exception e) {
        return false;
    }

}

上面的代码取自这个SO帖子。

 类似资料:
  • Java运行时环境检测到一个致命错误: SIGSEGV(0xB)在PC=0x00007FBFFF58A061,PID=4562,TID=140465537804032 JRE版本:Java(TM)SE运行时环境(7.0_51-B13)(build 1.7.0_51-B13)Java VM:Java HotSpot(TM)64位服务器VM(24.51-B03混合模式linux-amd64压缩oops

  • 我希望有Apache Ignite经验的人能够帮助指导我的团队找到关于Apache Ignite新设置的答案。 数据从许多分布式传感器中不断产生,并流进我们的数据库。每个传感器每秒可能提供许多更新,但通常每秒生成<10个更新。 null 查询相当复杂,需要在时间上进行重要的(和动态的)回溯。一个查询可能需要来自一个站点中多个传感器的数据,但所需的传感器是动态确定的。大多数连续查询只需要最近几个小时

  • 我使用将整个代码库从更改为 由于节俭,我从一开始就经常超时,我无法继续...采用CQL,按照我成功设计的表格和更少的超时.... 有了这个,我能够插入大量不符合节俭原则的数据…但是经过一个阶段,数据文件夹大约在3.5GB左右。我经常遇到写入超时异常。即使我再次做同样的早期工作用例,现在也会引发超时异常。它的随机曾经工作过,即使在重新设置后也无法再次工作。 CASSADNRA服务器日志 这是卡桑德拉

  • 问题内容: 我有一个数字数组,我想知道该数组中哪个数字最常见。数组有时有5-6个整数,有时有10-12个,有时甚至更多- 数组中的整数也可以不同。因此,我需要一个可以与数组的不同长度和值一起使用的函数。 一个例子: 另一个例子: 现在,我正在寻找一个给出0(在第一个示例中)的函数,因为它在此数组中是3倍,而数组中的另一个整数(1)在数组中仅是2倍。或第二个例子是4。 看起来很简单,但是我找不到解决

  • 问题内容: 嗨, 我的lucene索引经常用新记录更新,索引中有5,000,000条记录,并且正在使用FieldCache缓存我的一个数字字段。但是在更新索引之后,需要花费一些时间来重新加载FieldCache(由于重新加载缓存,导致文档说DocID不可靠),所以如何通过仅将新添加的DocID添加到FieldCache来最小化此开销,导致此功能成为瓶颈应用。 我想要一种通过仅将新添加的文档添加到数

  • 问题内容: 我有一个表Orders(id_trip,id_order),表Trip(id_hotel,id_bus,id_type_of_trip)和表Hotel(id_hotel,name)。 我想在表Orders中获得最常入住的酒店的名称。 问题答案: 分布中的“最常出现的值”是统计学中的一个不同概念,带有一个技术名称。它称为发行版的MODE。Oracle具有此功能。https://docs.