请求时间失败:java.net.socketException:协议不支持地址族

2023-12-01

我到处寻找这个例外,但找不到解决方案&任何帮助将不胜感激。 我尝试过设置断点,但它们没有被击中,该错误也在 log.v 中可见,而不是在 log.e 中可见。 该代码在前几次调用中有效,例如 10-12 次,然后变得更慢(开始因此错误而失败),并最终每次都会抛出此错误。

            _actionRunble = new Runnable() {
            public void run() {
                try{
                    ##..##
                     _imView.setImageBitmap(bmImg);
                     Drawable oldD = _imView.getBackground();
                     Drawable dd = new BitmapDrawable(bmImg);
                     _imView.setBackgroundDrawable(dd);
                     //(((BitmapDrawable)oldD).getBitmap()).recycle();
                     Thread t = new Thread(_r);
                     t.start();
                }catch(Exception e)
                {
                    e.printStackTrace();
                }
              }
           };
           _r = new Runnable() {
            @Override
            public void run() {
                downloadFile(imageUrl);
            }
           };
           Bitmap bmImg;
           void downloadFile(String fileUrl){
            URL myFileUrl =null;          
              try {
                   myFileUrl= new URL(fileUrl);
              } catch (MalformedURLException e) {
                   e.printStackTrace();
              }
              catch (Exception e) {
                   e.printStackTrace();
              }
              try {
                   HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
                   conn.setDoInput(true);
                   conn.connect();
                   InputStream is = conn.getInputStream();

                   bmImg = BitmapFactory.decodeStream(is);
                   //this.runOnUiThread(_actionRunble);
                   _mHandler.postDelayed(_actionRunble, 2000);
                   //_mHandler.postAtFrontOfQueue(_actionRunble);
                   //_mHandler.post(_actionRunble);
              } catch (IOException e) {
                   e.printStackTrace();
              }
              catch (Exception e) {
                   e.printStackTrace();
              }
         }

活动 oncreate 调用 downloadfile(...) ,在调用返回后,我再次使用相同的 url 进行调用以获取更新的图像。我尝试将主队列上的发布消息延迟 2 秒(尽管我不希望如此),但这也不起作用:(。 请随时进一步澄清。


好吧,我终于解决了。 为了特别摆脱这个异常,我开始使用单个 HttpURLConnection(重复使用它直到失败,然后再次创建它),但是在执行“bmImg = BitmapFactory”时遇到“BitmapFactory.decodeStream 返回 null”问题.decodeStream(is); “这是因为我无法再次在同一个连接上使用相同的输入流,所以我必须在再次使用它之前关闭它(is.close(),in.close())。但由于某种原因,这种作用不起作用(我不知道!)。 最后,我没有从 HttpURLConnection 获取输入流(使用 conn.getInputStream() ),而是直接从 URL( myFileUrl.openStream() )获取它。 BitmapFactory.decodeStream(is) 有时仍然可以返回 null(更好地处理这种情况 - 问我为什么:)),在这种情况下我会再次尝试下载。 这是更新的 downloadFile(...) 方法,希望它对某人有帮助:)

  void downloadFile(String fileUrl){
            URL myFileUrl =null;          
              try {
                   myFileUrl= new URL(fileUrl);
              } catch (MalformedURLException e) {
                  //print exception;
              }
              catch (Exception e) {
                  //print exception;
              }
              try {
                   //InputStream in = conn.getInputStream();--avoid this, get it from url directly instead, unless u really need to read from httpconnection because u want to configure headers or some other reason.
                   InputStream in = myFileUrl.openStream();
                   InputStream is = new BufferedInputStream(in);
                   bmImg = BitmapFactory.decodeStream(is);
                   in.close();
                   is.close();
                   if(bmImg==null)
                   {
                        downloadFile(fileUrl);
                        return;
                   }
                   //this.runOnUiThread(_actionRunble);
                   //_mHandler.postAtFrontOfQueue(_actionRunble);
                   //_mHandler.post(_actionRunble);
                   _mHandler.postDelayed(_actionRunble, 1000);
              }

             catch (IOException e) {
                  downloadFile(fileUrl);
                  //print exception;
              }
              catch (Exception e) {
                  downloadFile(fileUrl);
                  //print exception;
              }

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

请求时间失败:java.net.socketException:协议不支持地址族 的相关文章

  • 为什么 Android WebView 拒绝用户输入?

    我正在开发一个 Android 应用程序 它使用 WebView 来显示 Facebook 的登录页面 该页面加载精美 我可以选择用户名 密码文本框 但在其中输入内容将不起作用 也就是说 它们肯定有输入焦点 它们有橙色焦点突出显示框和闪烁的
  • 如何在android中使用kso​​ap2库解析复杂的响应

    大家好 我正在使用 Ksoap2 库解析以下类型的响应 但没有成功获得结果 我的请求如下
  • 如何从我的班级访问活动 UI?

    我有一个活动创建我的类的对象实例 file MyActivity java public class MyActivity extends Activity TextView myView TextView findViewById R i
  • 如何列出我的应用程序以供下载文件?

    我想通过我的应用程序从浏览器下载文件 我正在尝试将我的应用程序列在complete action using对话 它显示其他操作 例如查看文件等 但在下载文件的情况下 它不会显示在对话框中 我怎样才能像图片中那样列出我的应用程序 我在我的活
  • ActionBar 下拉微调器项目默认为第一项

    我试图设置默认情况下需要在微调器中选择的项目的索引 但它始终默认为 0 第一项 actionBar setDisplayShowTitleEnabled false actionBar setNavigationMode ActionBar
  • Android Studio:无法终止 xxx 的现有进程

    The application is a system application and it will be started by other applications When I install the application from
  • 整个应用程序中的全局“搜索功能”

    在我的整个应用程序中 我希望搜索按钮执行单独的操作Activity 即 当我按下搜索按钮时 从应用程序中的任何位置调用一个单独的活动 有什么方法可以代替定义onSearchRequested 在每项活动中 我只是在一个地方配置它 例如Man
  • 请求超级用户权限编辑文件

    我正在规划一个需要编辑系统文件的应用程序 我只能使用 root 权限编辑该文件 我有一个已 root 且安装了 Superuser apk 的开发手机 其他需要 root 的应用程序会在首次启动时请求 root 访问权限 我想做同样的事情
  • 方向改变时的类转换异常 (Android)

    我有一个由选项卡活动托管的活动 当我更改屏幕方向时 我的应用程序崩溃了 02 14 21 01 35 825 E AndroidRuntime 9424 java lang RuntimeException Unable to start
  • 动态选取框文本

    是否可以将列表视图的 java 编码中的文本添加到 Android 中的选取框滚动中 如果可以 请告诉我如何做 如果需要 我将发布使用的代码 这是列表视图使用的 XML 如下
  • Android Realm.io:行/对象不再有效

    这是我的删除功能 它确实找到了workday1 object public static void delete Context context Workday workday Realm realm getRealm context re
  • 如何通过子 POJO 的属性过滤复合 ManyToMany POJO?

    我有两个像这样的房间实体 Entity public class Teacher implements Serializable PrimaryKey autoGenerate true public int id ColumnInfo n
  • Webview 电子邮件链接 (mailto)

    我有一个视图并查看该网站有用于发送电子邮件的 malito 代码 当我打开链接时 会出现错误 我希望当我打开链接时打开 Gmail 应用程序或其他电子邮件应用程序 感谢所有帮助者 public class teacher extends A
  • 如何在NavigationView的菜单项中设置椭圆形?

    我想在 NavigationView 的菜单项中设置 android ellipsize end 在我当前的实现中 当菜单项中的文本太长时 它只是在末尾被剪切 这是我到目前为止所尝试过的
  • Phonegap facebook 插件:android 的各种问题

    我正在尝试将 Phonegap 3 1 与 Phonegap facebook plugin 集成 以使我的应用程序能够使用 facebook 登录 https github com phonegap phonegap facebook p
  • 当单个通知是分组通知的一部分时,NotificationListenerService onNotificationPosted() 会多次调用该通知

    我正在尝试使用NotificationListenerService 监听android 通知 我已经使用 Whatsapp 和 Hangout 通知测试了代码 场景一 来自 1 位用户的 1 条消息 我收到 onNotificationP
  • 停止前台运行的服务的正确方法是什么

    我正在尝试停止作为前台服务运行的服务 当前的问题是当我打电话时stopService 通知仍然保留 因此 在我的解决方案中 我添加了一个接收器 我正在将其注册到onCreate 在 的里面onReceive 我调用的方法stopforegr
  • 查找配对的 Android 蓝牙设备是否在范围内的正确方法?

    我想编写一个充当蓝牙客户端的应用程序 我想做的是找出最好的方法来确定我支持的特定设备是否在范围内 而不是一直尝试在其上执行 BluetoothDevice connect 并失败如果不在范围内 这里我们假设设备已经配对 恐怕在特定设备处于范
  • 读/写带有特殊字符的.txt文件

    I open Notepad Windows 并写 Some lines with special characters Special 并前往另存为 someFile txt 与Encoding set to UTF 8 在Java中我有
  • 无法通过usb调试安装android应用程序

    我知道这是一个老问题 但我第一次尝试在 Redmi note 4 上安装我的应用程序 每当我尝试安装时 它都会显示一个对话框 安装失败 并显示消息无法建立会话 通过卸载现有版本的 apk 如果存在 然后重新安装 可能可以解决此问题 警告 卸

随机推荐

  • 在 Laravel 中处理过期令牌

    laravel 5 中处理过期令牌的最佳方法是什么 我的意思是我有一个页面 它有一些执行 ajax 请求的链接 当页面加载时它们工作正常 但是当我等待一段时间时 我收到一个 TOKEN MISMATCH 错误 现在 我必须刷新页面才能使其再
  • 使用 JsonConverter 存储/检索子父关系

    我有一个带有子对象数组的 JSON 结构 包括 POCO 类 如下所示 Object Name TestA ChildObjects Name TestB ChildObjects Name TestC 反序列化时 我想保留对父级的引用 我
  • COM 库的属性/方法描述

    如果您创建 COMClass 我注意到当您引用生成的 tlb 文件时 XML 摘要标记中的值不会显示在 VB6 VBA 的对象浏览器中 有没有办法让这些值显示出来 不 12 年的 IntelliSense 发展阻止了这一点 XML 文档注释
  • 如何以人类可读的方式记录嵌套对象中的 Protobuf 字符串?

    给定一个原型文件 syntax proto3 package hello message TopGreeting NestedGreeting greeting 1 message NestedGreeting Greeting greet
  • smooth.spline():拟合模型与用户指定的自由度不匹配

    这是我运行的代码 fun lt function x 1 3 sin 4 pi x pi set seed 1 num samples lt 1000 x lt runif num samples y lt fun x rnorm num
  • 如何从 PDF 中提取嵌入字体作为有效字体文件?

    我知道pdftk exe实用程序 可以指示 PDF 使用哪些字体以及它们是否嵌入 现在的问题是 假设我有嵌入字体的 PDF 文件 如何才能以可作为常规字体文件重新使用的方式提取这些字体 有 最好是免费的 工具可以做到这一点吗 另外 可以使用
  • 如何动态地将列和行添加到空数据集中?

    我创建了一个新数据集 DataSet local ds2 new DataSet 我尝试动态添加行和列 DataColumn dcAmount new DataColumn EmpID local ds2 Tables ACHFile Co
  • 限制 HTML5 日期输入中的未来日期

    我想限制用户只能在 HTML 日期输入中添加未来日期 我想添加 HTML5 日历 而不是 jQuery UI 日期选择器 谁能告诉我如何将输入限制为未来日期 您可以使用 HTML5 输入日期的 min 和 max 属性 HTML5代码
  • 当 exe 失败时,python popen sdtout 无法获取所有输出

    我是 python 新手 并尝试在 Windows 中从 python 运行 exe 软件 我写了以下代码 from subprocess import STDOUT Popen PIPE cmd r C Users lenaq Deskt
  • 无法查看创建的架构内的任何关系

    我启动了一个 postgres 容器 它通过放置在 docker entrypoint 文件夹中的 sql 文件创建模式和表 我的架构列在 dn 中 但 dt 没有给出任何关系 访问权限完好无损 执行 dn 给出 List of schem
  • 如何在 MVC WebGrid 中显示行号

    我想要一个专栏row number在 MVC WebGrid 中 我该怎么做 这是一个非常好的方法 但是当您使用排序或分页时 您的RowNumber页面上的值不会从 1 开始 在我的项目中 我遇到了一个情况 我需要知道独立于 WebGrid
  • JanusGraph Gremlin 使用“as”和“select”进行图遍历提供了意想不到的结果

    我有两个图遍历 结果如下 g V has id 2 outE knows inV gt v 4216 gt v 8312 g V has id 5 outE knows inV gt v 4216 gt v 8312 基本上 两个顶点都有
  • ggplot 中的分组条形图

    对于示例数据框 df lt structure list year c 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 imd quintile c 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
  • Mongo 查询 Distinct 与 Sum 不起作用

    在这里我更新了我的问题 这是输入数据 您可以使用此命令插入到本地数据库中 db pms teamleadtimesheets insertMany Text Analysis Comments 4 TaskType DELIVERY Ite
  • 通过 CSS 使用自定义字体

    我正在尝试获取自定义字体 当我尝试时 字体不起作用 它使用自定义的 Times new Roman 这是我在样式表中的代码 font face font family ARBONNIE src url Custom ARBONNIE ttf
  • 将回归线添加到多个散点图

    环顾四周 找不到我的问题的答案 所以终于不再潜伏了 我一直在创建多个散点图 将每一列与其他列进行比较 如下所示 我使用了脚本 attach File plot Files c 2 3 4 5 6 7 8 但是 我似乎无法正确输入命令以在图表
  • 意外响应代码 403(但在浏览器中工作正常)

    我试图从下面的 URL 获取 json 数据 但是当我运行应用程序时它显示 31029 31125 E Volley 228776 NetworkUtility shouldRetryException Unexpected respons
  • pip install:请检查该目录的权限和所有者

    在安装 pip 和 python 时 我遇到了这样的情况 目录 Users Parthenon Library Logs pi 或其父目录不属于当前用户 并且调试日志已被禁用 请检查该目录的权限和所有者 如果使用 sudo 执行 pip 您
  • zBar 相机中的闪光灯

    我正在使用 ZBAR 进行二维码扫描 我已经正确实现了 ZBar 现在我想在 Zbar 中打开或关闭闪光灯 在ZBar网站上我只得到有关手电筒的信息 但没有有关手电筒的信息 闪光 是指光 闪烁 一瞬间 火炬 是指灯一直亮着的时候 你确实想要
  • 请求时间失败:java.net.socketException:协议不支持地址族

    我到处寻找这个例外 但找不到解决方案 任何帮助将不胜感激 我尝试过设置断点 但它们没有被击中 该错误也在 log v 中可见 而不是在 log e 中可见 该代码在前几次调用中有效 例如 10 12 次 然后变得更慢 开始因此错误而失败 并