首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

android中的connection.getContentLength()返回-1

在Android中,connection.getContentLength()方法用于获取HTTP连接的内容长度。该方法返回一个long类型的值,表示HTTP响应的内容长度。然而,当无法获取内容长度时,该方法会返回-1。

这种情况通常发生在以下几种情况下:

  1. 服务器未设置Content-Length头部字段:Content-Length是HTTP头部字段之一,用于指示HTTP响应的内容长度。如果服务器未正确设置该字段,或者使用了分块传输编码(chunked transfer encoding),则无法获取内容长度,getContentLength()方法将返回-1。
  2. 服务器响应使用了压缩编码:有时,服务器会对响应内容进行压缩,以减少传输数据量。如果服务器使用了压缩编码(如gzip或deflate),则无法直接获取压缩后的内容长度,getContentLength()方法将返回-1。
  3. 连接未建立或已关闭:如果在调用getContentLength()方法之前,连接未能成功建立或已经关闭,则无法获取内容长度,方法将返回-1。

在处理这种情况时,可以考虑使用其他方法来获取内容长度或处理响应数据。例如,可以使用HttpURLConnectiongetInputStream()方法获取输入流,并通过读取流数据的方式来获取内容长度。另外,还可以使用第三方库,如OkHttp或Volley,它们提供了更强大和灵活的HTTP请求和响应处理功能。

总结起来,connection.getContentLength()方法返回-1表示无法获取HTTP响应的内容长度,可能是由于服务器未设置Content-Length头部字段、使用了压缩编码或连接未建立或已关闭等原因。在实际开发中,我们需要根据具体情况采取适当的处理方式,以确保正确获取和处理HTTP响应数据。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android NDK编程(七)--- JNIList结构类数据返回

前言 上一篇文章我们介绍了《Android NDK编程(六)--- JNI类参数传递与返回》学会了使用类返回,在做开发,往往我们返回参数带有List数据,所以我们今天这一章来说一下List...数据返回方法。...代码实现 我们还是接着上面的DEMO,因为已经建好CProduct类了,所以我们这里就不再创建了。 首先在VaccaeJNI定义人们方法getlistproduct() ?...二、获取ArrayList构造函数ID并创建一个ArrayList对象 ? 三、获取ArrayListAdd函数ID,准备在循环中调用 ? 四、获取CProduct类并定义类各个属性 ?...五、通过循环生成CProduct然后添加到我们ArrayList ? 六、输出我们ArrayList ?

4.1K30

Mybatis 主键返回

XML方式 返回自增主键 insert into sys_user(...当需要设置多个属性时 , 使用逗号隔开 , 这种情况下 还需要配置 keyColumn属性 , 按顺序指定数据库列 , 这里列值会和 keyProperty 配置属性一一对应 ....由于要使用数据库返回主键值 , 所以SQL上下两部分列中去掉了 id 列和对于 #{id} 属性 返回非自增主键 采用标签获取主键值 , 这种方式对提供和不提供主键自增功能数据库同样适用...keyProperty和上面useGeneratedKeys用法和含义一样 , 这里resultType用于设置返回值类型. order 属性和数据库相关 , 在MYSQL , order是AFTER..., 因为当前及记录主键值在insert语句执行成功之后才能拿到 , 而在ORACLE ,oder是BEFORE , 因为ORACLE需要先从序列取到值 , 再将其作为主键插入到数据库

75020

android 右滑返回示例代码

类似于微信右滑返回,在BaseActivity里利用dispatchTouchEvent()拦截右滑动作,利用setTranslationX()实现动画,在DecorView里添加View作为滑动时左侧阴影...添加滑动时上层activity左侧阴影 滑动时关联下层activity滑动 注意:步骤代码为了不关联到后面的步骤,会与最终有点不同 背景透明 <item name="<em>android</em>:windowBackground..." @android:color/transparent</item <item name="<em>android</em>:windowIsTranslucent" true</item activity跳转动画..." android:fromXDelta="0" android:toXDelta="100%" android:fromYDelta="0" android:toYDelta=...superDispatchTouchEvent(ev)) { return true; } return true; } 根布局位移动画 根据手指滑动距离设置根布局偏移距离,用滑动距离和手指抬起时速度判断是否返回

93021

Android 滑动返回Activity实现代码

Android 滑动返回Activity实现代码 近来玩微信时候偶然发现,向左滑动朋友圈竟然可以返回主页,故引起兴趣特研究 代码很简洁 package com.example.wyj.cainiaoshopping.activity...; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import...saveTrackingMode(edgeFlag); } } 绑定远程仓库 compile 'me.imid.swipebacklayout.lib:library:1.0.0' 另外Activity主题也要设置...<item name="<em>Android</em>:windowIsTranslucent" true</item 最后继承使用即可 以上就是关于Android 滑动返回Activity实例详解,本站有关Android...开发文章还有很多,希望大家搜索查阅,感谢阅读,希望能帮助到大家,谢谢大家对本站支持!

91221

Android onActivityResult获取返回用法

显式意图通常主要是启动本应用Activity之间数据,而隐式意图则常见于启动系统某些特定动作,比如打电话,或者是跨应用Activity启动。...Android 系统会根据隐式意图中设置动作(action)、类别(category)、数据(URI和数据类型)找到最合适组件来处理这个意图。...MainActivity里面的主要代码 (1)当需要返回值时,那么在启动另一个Activity时要用到startActivityForResult(intent, REQUEST_CODE); 注意第二个参数是请求...: 这个里面的 RESULT_CODE、intent 分别跟上段代码 onActivityResult() 方法第二个、第三个参数相对应。..."); Intent intent1 = new Intent("com.android.camera.action.CROP"); intent1

1.2K30

Android 拦截返回键事件实例详解

Android 拦截返回键事件实例详解 KeyEvent类 Android.View.KeyEvent类定义了一系列常量和方法,用来描述Android 按键事件和返回键有关常量和方法有。...public final int getAction():获取此事件对应事件类型 Activity拦截返回键 在Activity派生类可以通过重写onKeyDown和onKeyUp这两个方法来拦截返回键...onKeyDown()方法event.getAction()返回始终是KeyEvent.ACTION_DOWN,onKeyUp()方法event.getAction()返回始终是KeyEvent.ACTION_UP...这会导致返回事件又一次被调用。当卡顿结束后就出现多次返回现象。为了避免这种情况出现,可以在拦截返回函数增加时间限制。即如果本次返回事件距离上次处理时间过段,则不处理本次事件。...以对话框拦截返回键举例,增加返回键响应速度限制代码如下。

3.7K20

Android Camera1对焦与测光

Android Camera1开发系列连载: Android Camera1详解 Android Camera1显示预览四种方式 对焦模式 在使用特定对焦模式时候,必须确保相机支持该模式,相机支持对焦模式可以通过...设置对焦区域时候,需要先查询一下可设置对焦区域最大个数: // 返回0时候表示不支持设置对焦区域,通常都是返回1 // 当返回个数大于1时候,可以设置对焦区域列表, // 每个对焦区域可以设置权重...在TouchAF时候,测光区域可以和对焦区域一样,也可以区域中心点相同,而框大小不同,或者对焦区域和测光区域设置为不同区域,这种焦侧分离功能一般都是在相机app专业模式中提供。...注:Redmi k30 5G版 系统相机专业模式 点测光:对画面较小区域(占整体面积1.5% - 3%)进行测光,不考虑周边环境亮度,测光点所侦测画面非常小,结果比较精确。...在光线色差反差较大情况下,这种测光模式比矩阵测光更容易控制效果; 平均测光:又叫矩阵测光,对画面整体区域光线强弱和色彩等情况进行侦测分析后,得到一个平均比较科学测光值。

1.8K10

Android Camera1的人脸检测

检查功能是否支持 在开启人脸检测功能之前,必须检查一下该摄像头是否支持人脸检测,通过接口: // 如果返回0,则表示不支持 Parameters#getMaxNumDetectedFaces() 开启...从源码可以看到两个接口必须成对出现,连续调用startFaceDetection是会出现异常。而且默认检测方式为: /** * Hardware face detection....在相机类app,可以观察到在手动对焦和拍照时候会停止绘制人脸框。...通过Face对象,可以获得当前预览帧识别到的人脸信息,包括人脸区域,可信度评分,左右眼睛和嘴巴坐标点等 Face#score表示人脸识别的可信度,值为[1, 100], 值越高,可信程度越高,在多张人脸场景下通常都需要过滤掉评分比较低结果...https://github.com/sifutang/Camera1Demo.git

1.6K20

Android 自定义返回按钮实例详解

Android 自定义返回按钮实例详解 程序我们有时候想让放回按钮按照自己需求调整页面而不是单纯按照系统返回上一级,这个问题很简单,重写 onKeyDown 方法即可。...下面方法,包含了 webview 返回上一页和普通 activity 单击设置和双击退出程序。...@Override public boolean onKeyDown(int keyCode, KeyEvent event) { //如果我们用是webview页面,想返回网页上一页设置这里就可以了...finish(); System.exit(0); } return true; } return super.onKeyDown(keyCode, event); } 以上就是Android...自定义返回实例详解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站支持!

1.2K41
领券