Android之网络访问(一)android 中对apache httpclient及httpurlconnection的选择

Android学习笔记:HttpClient和HttpURLConnection 在Android开发中网络请求是最常用的操作之一,Android SDK中对HTTP(超文本传输协议)也提供了很好的支持,这里包括两种接口: (1)标准Java接口(java.NET)——HttpURLConnection,可以实现简单的基于URL请求、响应功能; (2)Apache接口(org.apache.http)——HttpClient,使用起来更方便更强大; 一、HttpClient H... 阅读详情
在官方blog中,android工程师谈到了如何去选择apache client和httpurlconnection的问题: 
  原文见http://android-developers.blogspot.com/2011/09/androids-http-clients.html 
这里小结下几点。 

1) apache httpclient比较稳定点,少BUG,但由于API的关系,扩展改造麻烦点, 
所以android team现在不鸟这东西了基本 

2) httpurlconnection比较轻便,灵活,易于扩展,在2。2前有个BUG, 
见http://code.google.com/p/android/issues/detail?id=2939 
  可以通过如下代码去解决: 
 
Java代码   收藏代码
  1. private void disableConnectionReuseIfNecessary() {    
  2.   // HTTP connection reuse which was buggy pre-froyo     
  3.  if (Integer.parseInt(Build.VERSION.SDK) < Build.VERSION_CODES.FROYO) {        System.setProperty("http.keepAlive", "false");     
  4.  }  
  5. }  

3) 在Gingerbread中,httpurlconnection会增加对压缩报文头的处理,服务端可以用 
GZIP,详细见: 
  http://developer.android.com/reference/java/net/HttpURLConnection.html 

4) 对HTTPURLCONECTION中,在3。0后以及4。0中都进行了改善,比如对HTTPS的支持, 
在4。0中,还增加了对缓存的支持呢!比如下面的代码: 
Java代码   收藏代码
  1. private void enableHttpResponseCache()   
  2. {    
  3.   try {  
  4.         long httpCacheSize = 10 * 1024 * 1024; // 10 MiB      
  5.     File httpCacheDir = new File(getCacheDir(), "http");      
  6.     Class.forName("android.net.http.HttpResponseCache").getMethod("install", File.class, long.class.invoke(null, httpCacheDir, httpCacheSize);     
  7.  }   
  8. catch   
  9. (Exception httpResponseCacheNotAvailable) {    
  10.   }  
  11. }  


  最后的建议,Gingerbread后的版本,都建议用httpurlconnection,获得更高的性能
永磁同步电机无传感器控制:HFI与ESMO技术详解 高频注入(HFI)和增强型滑模观测器(ESMO)是现代永磁同步电机(PMSM)无传感器控制的核心技术。HFI通过注入高频信号利用电机凸极效应获取转子位置,而ESMO则通过改进传统滑模观测器,有效抑制抖振并提升动态响应。这两种技术的结合特别适用于零低速区域的位置估计,在工业伺服、电动汽车等领域有广泛应用。方波高频注入作为实现方案之一,具有计算量小、实现简单的特点,配合自适应滤波等信号处理技术,可以在保证精度的同时降低系统成本。 阅读详情

相关推荐

用LTspice仿真Buck电路输出电容:从参数计算到波形优化的全流程演示

本文详细介绍了使用LTspice仿真Buck电路输出电容的全流程,从理论计算到波形优化。通过解析关键参数如纹波电压、瞬态响应和ESR,结合工程计算方法和LTspice仿真技巧,帮助工程师优化Buck电路设计,解决输出纹波过大和瞬态响应不佳的问题。

night的博客 851

android 中对apache httpclient及httpurlconnection的选择

在官方blog中,android工程师谈到了如何去选择apache client和httpurlconnection的问题:   原文见http://android-developers.blogspot.com/2011/09/androids-http-clients.html 这里小结下几点。 1) apache httpclient比较稳定点,少BUG,但由于API的关系,扩展改

pengjianbosoft的专栏 865

汇川AM系列PLC玩转CNC:手把手教你用File模式读取G代码文件(附避坑指南)

本文详细介绍了如何使用汇川AM系列PLC的File模式读取G代码文件,涵盖从CAD设计到PLC配置的全流程。特别针对路径格式、文件类型等常见问题提供避坑指南,帮助工程师快速实现CNC加工的自动化控制。

weixin_33582311的博客 403

深入Android通过Apache HTTP访问HTTP资源

深入Android通过Apache HTTP访问HTTP资源   HttpClient接口 实现类:DefaultHttpClient这也是常用的一个用于实现HttpClient接口的子类, HttpClietnt中定义的常用抽象方法 方法名称 描述 public abstract HttpResponse execut

huaxa程序猿 1597

OpenHarness代码解读

Harness 是包裹在大模型之外、为其赋予完整执行能力的全套基础设施。模型负责提供智能与推理,Harness 则为模型提供感知、行动、记忆、工具与安全约束,使其从语言模型变成可自主完成复杂任务的实用智能体。我这里把向量数据库方案定义为:把对话片段、事件、偏好、工具结果等切成 memory chunks,做 embedding,存进向量库,查询时靠 ANN 相似度召回,再交给 LLM 读。AAAI 的综述类论文就明确指出,很多 LLM agent 的长期记忆就是这么做的。AAAI 期刊把文件系统方案。

qq_52053775的博客 187

fanuc机器人KAREL中 函数的应用

本次课程讲解编程的思路。很多的同学都玩过积木,一个一个的模块逐渐累积起来,通过彼此之间的相互联系,最终形成一个完整的整体。其实编程也是这样。 将一个对象根据其特点进行模块化拆分,尤其是一些特点非常相似的内容,将其变成一个模块。然后通过传递参数,实现不同的功能,这就是模块化编程。

haier123888的博客 2744

使用URLConnection与ApacheHttpClient进行http访问

发送http请求 方法一(通过URLConnection): package com.sand.http.url; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java...

飘在上海的北方人 248

IDEA出现闪退或打不开的解决方法

本身项目比较大,为了打开这个软件,可调节IDEA中安装的bin目录下有个。打开IDEA的时候过一会便闪退,可以再IDEA的右下角看到如下提示。(如果没有该提示,软件右下角也会有个红色感叹号,点开查看原因即可)闪退的多数原因大致是out of memory,内存溢出。查看任务管理器中的进程:(发现内存随时有溢出的情况)但也需要注意,该参数并不是越大越好,适中即可。只有个别原因是需要管理员权限就可执行!可以尽量减少软件的启动。

码农研究僧的博客 5943

HttpClient、HttpURLConnection协议访问网络

HttpClient、HttpURLConnection协议访问网络 一:HttpClient简介 HttpClient是什么? HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包。 尽管java.net软件包提供了用于通过HTTP访问资源的基本功能,但它并未提供许多应用程序所需的全部灵活性或功能。HttpClient试图通过提供高效,最新且功能丰富的程序包来实现此空白,以实现最新HTTP标准和建议的客

GuanGuBin的博客 619

YOLOv8改进 | 主干篇 | 利用MobileNetV1替换Backbone(轻量化网络结构)

本文给大家带来的改进机制是MobileNetV1,其是专为移动和嵌入式视觉应用设计的轻量化网络结构。这些模型基于简化的架构,并利用深度可分离卷积构建轻量级深度神经网络,其引入了两个简单的全局超参数,用于在延迟和准确性之间进行有效的权衡。实验表明,MobileNets在资源和准确性的权衡方面表现出色,并在多种应用(如对象检测、细粒度分类、面部属性识别和大规模地理定位)中展现了其有效性,这个模型非常适合轻量化的读者来使用。适用检测目标:轻量化网络结构适合轻量化的读者。

Snu77的博客 3966

开源项目-智能算法中台管理系统

智能算法中台管理系统,系统主要有样本中心,算法中心,模型中心等模块

u010479989的博客 2998

Android 网络 HttpClient和HttpURLConnection的区别

Android 网络 HttpClient和HttpURLConnection的区别 Android中使用 Android 2.2及以下版本,使用的是HttpClient Android 2.3及以上版本,使用的是HttpURLConnection 这两种方式都支持HTTPS协议、以流的形式进行上传和下载、配置超时时间、IPv6、以及连接池等功能 Android中两者关系 由于HttpClie...

初心一点的专栏 687

前后端面试题【目录】

工作时候扭螺丝,面试时候造火箭,现状就是如此。不管是背八股文,还是掌握了知识的精华,对答如流才是硬道理。本专栏就是要集具前端精华,规范、算法、架构、封装、原理等一并汇集,让前端的小伙伴有个思路。, 欢迎一起交流,并非常期望您能够提供有价值的学习资料。

大剑师兰特的GIS世界 1835

HttpURLConnection与HttpClient

HttpURLConnection与HttpClient一.HttpURLConnection1.基本介绍2.提供的几个方法3.使用例子3.1使用GET方式访问HTTP3.2使用POST方式访问HTTP4.使用总结二.HttpClient1.基本介绍2.使用流程3.使用例子3.1使用GET方式访问HTTP3.2使用POST方式访问HTTP3.3POST和GET的区别4.使用总结三.表单提交中的po...

weixin_44275194的博客 2546

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Android 9.0/P 版本推荐使用 HttpURLConnection,弃用 Apache-httpClient

早在几年前,谷歌就推荐在Android2.3版本以上使用HttpURLConnection,而在即将正式发布的 Android P 版本中,谷歌彻底取消了对Apache HTTPClient的支持,针对此更改,开发者该如何正确适配 Android P ? 一、背景 1.参考谷歌提供的 Android P 版本变更说明文档: https://developer.android.com/prev...

疾风剑豪 1429

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

android中httpclient和HttpURLConnection优缺点和常见bug解决方法

官方意见: 1) apache httpclient高效稳定,但是维护成本高昂,故android 开发团队不愿意在维护该库而是转投更为轻便的httpurlconnection; 2) httpurlconnection比较轻便,灵活和易于扩展,它在2.2前存在这样一个BUG, 详见http://code.google.com/p/android/issues/detail?id=2939

小刚的专栏 1万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Android爬虫,获取网页源码的两种方式,Apache HttpClient,HttpURLConnection

Apache HttpClient implementation group: 'cz.msebera.android' , name: 'httpclient', version: '4.4.1.1' package com.example.administrator.myapplication.Douyin; import java.io.IOException; import ...

张雨的博客 1415

利用HttpClient or HttpURLConnection 借助tomcat实现在本地进行网络数据的访问

在Android中的大部分app都是需要联网的,这里我们就可以在本地先模拟一下从本地的服务器来获得服务器中的数据 1)准备工作:tomcat,EMS员工管理系统(作为一个服务器中的服务)        1)tomcat的启动——>将tomcat的zip等文件解压到任意盘符的根目录(或者可以在没有任何中文的文件目录中)---->bin---->startup.bat(window环境下)-->开

alpsln的博客 2256

Android--网络连接之HttpURLConnection和HttpClient

Android网络连接之HttpURLConnection和HttpClient 1.概念             HTTP 协议可能是现在 Internet 上使用得最多、最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源。在 JDK 的 java.net 包中已经提供了访问 HTTP 协议的基本功能:HttpURLConnection。但是对于大部

Navan 386

[Android] HttpURLConnection & HttpClient & Socket

Android的三种网络联接方式 1、标准Java接口:java.net.*提供相关的类//定义地址URL url = new URL("http://www.google.com");//打开连接HttpURLConnection http = (HttpURLConnection) url.openConnection();2、Apache接口:android.net....

163

HttpClient网络访问

HttpClient网络访问 (一)、简介: 1、Apache组织提供了HttpClient项目,可以实现网络访问。在Android中,成功集成了HttpClient,所以在Android中可以直接使用HttpClient访问网络。 2、与HttpURLConnection相比,HttpClient将前者中的输入、输出流操作,统一封装成HttpGet、HttpPost、HttpReq

fydsw1314的专栏 510

关于安卓HTTP请求用HttpUrlConnection还是HttpClient好

安卓和JAVA应用开发少不了要提交HTTP请求,而基本上目前有两个实现方式:HttpUrlConnection(即URL.openConnection)和HttpClient。 网上不少人都认为HttpClient更好,理由是功能更强,BUG更少,更容易控制细节。但我个人认为普通JAVA人员可选用HttpClient,安卓开发人员则应该使用HttpUrlConnection,理由如下:

cocoooooa的专栏 879

Android访问网络,使用HttpURLConnection还是HttpClient?

转载请注明出处:http://blog.youkuaiyun.com/guolin_blog/article/details/12452307 最近在研究Volley框架的源码,发现它在HTTP请求的使用上比较有意思,在Android 2.3及以上版本,使用的是HttpURLConnection,而在Android 2.2及以下版本,使用的是HttpClient。我也比较好奇这么使用的原因,于是专门找到

lwklan的专栏 343
上一篇: Android性能调优
下一篇: 图片缓存:ImageCache和ImageSdCache(一)
代号码农
博客等级 码龄16年 5粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值