Android java.net.UnknownHostException:主机未解析(策略问题)

2024-03-18

我有 Android 代码,它使用后台进程定期(例如每小时)连接到网络上的内容源以检查更新的内容。当新用户下载该应用程序并首次运行它时,似乎(这只是“目前看来”)在首次运行的情况下,因为我们服务器的 DNS 尚未缓存在设备上,第一个系列的连接因可怕的 UnknownHostException: Host is unresolved 而失败。当然,应用程序稍后会再次尝试,并且(再次,“看起来像”)一切正常 - 也许是因为操作系统有时间实际解决该问题地址。

所以,我的问题是:(1) 其他 Android 开发人员在他们部署的应用程序中是否也看到了这种行为?第一次,一系列“主机未解决”的问题后来自行解决。 (2) 有没有人有更好的策略来“预热 DNS”,以便第一个真正的连接正常工作?或者当您遇到此异常时,您是否只是重新尝试一些回退循环?我正在考虑有一个单独的线程,尝试从我们的服务器获取一个小文本文件,并让它循环直到获取它,并且可能(不确定这部分)阻止其他传出网络连接,直到成功为止。

无论如何,我已经阅读了 Stack Overflow 上各种措辞相似的问题的大部分答案,我只是向大家保证

<uses-permission android:name="android.permission.INTERNET" />

在我的清单文件中设置:)


我在使用 HttpUrlConnection 时遇到过这种行为。我正在使用简单的解决方法 - 在使用任何 url 之前执行以下代码。

    try {
      InetAddress i = InetAddress.getByName(URLName);
    } catch (UnknownHostException e1) {
      e1.printStackTrace();
    }
// ... actually using URLName

我第一次在这里获得 UnknownHostException,但该 url 的下一次使用是成功的(DNS 服务器返回正确的 IP 地址,我可以连接到该服务器)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android java.net.UnknownHostException:主机未解析(策略问题) 的相关文章

  • 以编程方式将 TextView 添加到主屏幕小部件

    我想以编程方式将文本视图控件添加到我的主屏幕小部件 在下面的示例中 我使用 TextView 填充 Linearlayout 但是这里应该如何使用 RemoteView 它只接受 xml 资源布局作为参数 public class MyWi
  • 如何在进入新活动之前终止线程和处理程序

    大家好 在我尝试清理处理程序时 这段代码可能有点混乱 因为我一直在尝试追踪崩溃发生的位置 我有一个对话框活动 显示密码输入 进度条由线程和处理程序动画显示 似乎当我试图查看进度条是否完成并尝试终止线程时 当我尝试进入新活动时 我这样做的方式
  • 计算日期之间的天数差异

    在我的代码中 日期之间的差异是错误的 因为它应该是 38 天而不是 8 天 我该如何修复 package random04diferencadata import java text ParseException import java t
  • Java - 返回值是否会中断循环?

    我正在编写一些基本上遵循以下格式的代码 public static boolean isIncluded E element Node
  • Spring Security OAuth2简单配置

    我有一个简单的项目 需要以下简单的配置 我有一个 密码 grant type 这意味着我可以提交用户名 密码 用户在登录表单中输入 并在成功时获得 access token 有了该 access token 我就可以请求 API 并获取用户
  • Android Studio 将音乐文件读取为文本文件,如何恢复它?

    gameAlert mp3是我的声音文件 运行应用程序时 它询问我该文件不与任何文件类型关联 请定义关联 我选择TextFile错误地 现在我的音乐文件被读取为文本文件 我如何将其转换回music file protected void o
  • 在为 Android 实现 Google 登录时,任务“:app:transformClassesWithDexForDebug”执行失败

    我正在尝试为 Android 实现 Google 登录 并且我正在按照以下说明进行操作 https developers google com identity sign in android start integrating https
  • onBackPressed 隐藏 不破坏 Activity

    我知道如何取消后退按键 以便活动 主窗口保持可见 public void onBackPressed return 我的目标是隐藏该活动 但是 在没有完成它的情况下 您如何在 onBackPressed 事件中做到这一点 即我想达到 onP
  • NoClassDefFoundError:无法解析:Landroid/support/v7/appcompat/R$styleable

    新手尝试完成 Google 提供的我的第一个应用程序教程 在这个致命异常的过程中 我确实导入了很多随机包来消除许多事情的 无法解析 错误 例如 ActionBarActivity EditText Fragment LayoutInflat
  • android httprequest java.net.UnknownHostException

    我想用android发出http请求 是使用这个 void testHTTP HttpClient httpClient new DefaultHttpClient HttpUriRequest request new HttpPost h
  • 解决错误javax.mail.AuthenticationFailedException

    我不熟悉java中发送邮件的这个功能 我在发送电子邮件重置密码时遇到错误 希望你能给我一个解决方案 下面是我的代码 public synchronized static boolean sendMailAdvance String emai
  • 挂钩 Eclipse 构建过程吗?

    我希望在 Eclipse 中按下构建按钮时能够运行一个简单的 Java 程序 目前 当我单击 构建 时 它会运行一些 JRebel 日志记录代码 我有一个程序可以解析 JRebel 日志文件并将统计信息存储在数据库中 是否可以编写一个插件或
  • Java的-XX:+UseMembar参数是什么

    我在各种地方 论坛等 看到这个参数 并且常见的答案是它有助于高并发服务器 尽管如此 我还是找不到 sun 的官方文档来解释它的作用 另外 它是Java 6中添加的还是Java 5中存在的 顺便说一句 许多热点虚拟机参数的好地方是这一页 ht
  • 按字母顺序过滤 Firestore 数据以对 Google Cloud 中的文档读取进行分类/减少

    基于这样的事实Cloud Firestore 不支持全文搜索 https firebase google com docs firestore solutions search到目前为止 我决定问这个question https stack
  • 在android中跟踪FTP上传数据?

    我有一个运行 Android 的 FTP 系统 但我希望能够在上传时跟踪字节 这样我就可以在上传过程中更新进度条 安卓可以实现这个功能吗 现在 我正在使用org apache common net ftp我正在使用的代码如下 另外 我在 A
  • Android 自定义警报对话框中的 OnClickListener

    我是一个自学成才的初学者 感谢耐心 谢谢 在 Eclipse 中 我使用自己的 xml 文件 custom dialog 创建了一个自定义警报对话框 称为 usernamealert 如果用户尚未输入用户名 即 username lengt
  • Android:解析 XML 数据的最佳解析器 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在开发一个应用程序 其中我第一次要解析来自远程服务器的 xml 文件中的数据 但我无法选择哪个解析器是有效的或最适合解析的 因为我知道主要有
  • 在没有 Wifi 的情况下获取 Android 设备的 MAC 地址

    如何获取没有 Wifi 接口的 Android 设备 例如 Android 模拟器 的网络接口的 MAC 地址 通过WifiManager返回获取的WifiInfonull EDIT 更清楚地说 我必须与本地网络上的现有网络协议 不是我设计
  • Android ScrollView fillViewport 不工作

    我有一个简单的布局 名称位于顶部 按钮位于屏幕底部 或者超出该按钮 以防我添加更多项目 所以我使用带有 LinearLayout 的 ScrollView 如下所示
  • 当ScrollView滚动到底部时加载更多数据

    我有一个带有动态加载内容的滚动视图 有时可能会有很多内容 所以我想在用户滚动到底部时加载更多内容 我搜索了合适的方法 发现了两种 onScrollChanged and getScrollY 但我不知道如何将它用于我的目的 请给我一些建议

随机推荐

  • 如何从 python 中具有重复字段的列表中删除字典?

    假设我有一个字典列表 我将 重复项 定义为列表中 id 字段具有相同值的任意两个字典 即使其他字段不同 我如何删除这些重复项 一个示例列表类似于 name John id 1 name Mike id 5 name Dan id 5 在这种
  • 如何在图像地图之上创建 html 工具提示?

    我有以下代码 div style width 100 align center img src platform logos big png alt Icons of platforms we support Windows Linux a
  • 使用 Objective-C 从 PDF 中提取可编辑字段

    我已经研究在我的 iOS 应用程序中使用 PDF 一段时间了 我已经解决了一些难题 例如扫描操作员并在 UIWebView 中显示 PDF 然而 我真正需要做的是确定可编辑字段在 PDF 文档中 理想情况下 我希望能够直接与这些领域进行交互
  • Gstreamer Appsink 未从管道获取数据

    我正在设计一个管道 将来自 opencv 应用程序 从网络摄像头获取 的视频帧编码为 video x h264 格式 通过网络发送并在另一台不同类型的设备 可能是树莓派 上将其解码到适合我的项目的 RGB 流 为此 我应该使用硬件加速编码器
  • 如何使用Openlayers地图

    我对这个 openlayers 地图完全困惑了 即使有很多例子和维基 我也找不到如何重用它 我的意思是我想显示我的城市地图 可由管理员管理 管理员可以添加点和位置 并且它应该显示在前端 请帮我看看该怎么做 Like Conley写道 开放层
  • Java SWT 应用程序 - 置于前台

    我目前正在 Windows 7 上开发 SWT java 应用程序 通常应用程序将最小化 当串行端口上有事件时 应用程序应最大化自身 以下代码执行最大化部分 private void bringToFront final Shell she
  • 使用 Python 从解析的 HTML 中提取文本

    我是Python新手 我一直在尝试使用已用BeautifulSoup解析的正则表达式搜索html 我没有取得任何成功 我认为原因是我不完全理解如何正确设置正则表达式 我看过有关类似问题的旧问题 但我仍然没有弄清楚 如果有人可以提取 torr
  • 从命令行启动的 Visual Studio Code 合并了两个进程

    如果从命令行启动 Visual Studio Code 输入 code 则命令行 终端 进程和 vsc 进程将链接起来 vsc 日志条目写入终端 终端变得脆弱或无法使用 终止终端也会终止 VSC 这是在 Windows 10 VSC v 1
  • Json ajax 带参数传递

    function BindJson ajax type POST url NewPage aspx SerializeJson data contentType application json dataType json success
  • C++ NetBeans:如何将我的 .o 文件链接到我的项目?

    我已经买了一个课程 我有标题 h 和一个目标文件 o 我如何链接 o我的 NetBeans IDE 中的文件吗 Thanks 您需要添加您的 o文件作为外部库 我能够使用以下步骤完成此操作 转到项目属性 在下面Build gt Linker
  • Google Apps 脚本 Web 应用程序在外部网站上进行身份验证

    我需要实现一个用于登录网站的 Google Apps 脚本应用程序 然后如果该网站上的身份验证过程成功 用户应该在 google 脚本侧边栏中收到一条消息 例如 用户输入他的电子邮件和密码 然后按登录按钮 如果凭据正确 他应该登录网站 如果
  • 如何控制 graphviz 中的节点放置(即避免边缘交叉)

    我正在使用 graphviz 点 生成您可以在下面看到的图表 左下角的节点 红色椭圆 会引起烦恼 因为它的边缘与相邻节点的多个边缘交叉 有没有办法将节点放置限制在某个区域 您可以创建一个不可见的约束 以使红色节点出现在所有其他节点的左侧 r
  • 使用r32平台工具的ADB配对未知命令

    我刚刚下载了全新安装的 SDK 平台工具 因为我不需要 IDE 版本 r32 0 0 当使用 adb 对时 我得到以下信息 PS C userpath platform tools r32 0 0 windows platform tool
  • C 中的图像输出

    简单的问题 有没有办法使用 C 显示文件中的图像 例如 bmp 它显然不在graphics h中 而且我不能使用Allegro 因为它不支持Borland 或者我读过 我需要在学校项目中使用非常旧的编译器 我想问是否有人有使用其他库执行此操
  • 没有游标的存储过程

    如何在没有光标的情况下编写以下 sp 更重要的是它没有给我想要的输出 我没有写这个 我只是想解释一下这有什么问题 ALTER PROCEDURE dbo AccreditationExpiryCheck AS BEGIN SET NOCOU
  • Proguard retrace 没有将堆栈跟踪映射到实际源

    我一直在使用 eclipse 内置的 proguard 工具来混淆代码 效果很好 但是 当我尝试重新跟踪混淆代码的堆栈跟踪时 重新跟踪不会输出未混淆的堆栈跟踪 我仔细检查了mapping txt 以确保我使用的是正确的 这是我的堆栈跟踪 E
  • 如何进行 MANCOVA

    我正在尝试在 R 中执行 mancova 但是 我尝试过jmv https cran r project org web packages jmv jmv pdf包裹 x lt cbind total c total p dependent
  • n 层架构的单元测试

    我使用 3 层架构 控制器 业务和数据层 在我的数据层中 我通过传递连接字符串和其他必要的参数来调用 Sql Server 数据库 我必须为控制器层和业务层编写单元测试 我想编写一个存根 假存储库 从中返回硬编码值 结果 当我为业务层编写测
  • Git 交互式 rebase 无需打开编辑器

    Git 允许某些命令在不先打开编辑器的情况下创建或修改提交 例如 git commit amend no edit git commit fixup HEAD 我已经设定rebase autosquash to true 以便交互式变基的待
  • Android java.net.UnknownHostException:主机未解析(策略问题)

    我有 Android 代码 它使用后台进程定期 例如每小时 连接到网络上的内容源以检查更新的内容 当新用户下载该应用程序并首次运行它时 似乎 这只是 目前看来 在首次运行的情况下 因为我们服务器的 DNS 尚未缓存在设备上 第一个系列的连接