Android SDK自带的httpclient与第三方引入的apache httpclient存在同名类出现冲突异常
java.lang.NoSuchFieldError: INSTANCE
org/apache/http/conn/ssl/AllowAllHostnameVerifier 类报错,是因为android自带的httpclient包里面有同名类AllowAllHostnameVerifier
https://bbs.csdn.net/topics/607103688 针对这位技术同行提出的方案我测试过不行,包括这个帖子评论区提到模块化或组件化方案我通过打包jar还是不行,android还是会优先加载自带的同名类,自带的同名类优先级最高。
所以我最终解决方案是通过开源apache httpclient重新打包,打包借助eclipse等集成开发环境需要耗时3个小时左右, 通过对org.apache更换包名重新打包jar导入,最终我通过这种方式解决。
————————————————
版权声明:本文为CSDN博主「soho08」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/soho08/article/details/126624519
相关推荐
使用httpclient调用公安部接口 并接受返回的字符串转换为图片
本篇将详细讲解如何利用Apache HttpClient及其相关的jar包在Android环境中进行文件上传。 首先,我们关注的是标题提到的两个jar包:“apache-mime4j-0.6.jar”和“httpmime-4.0.jar”。这两个jar包是HttpClient库的...
本教程将详细讲解如何利用HttpClient以及第三方MiME(Multipurpose Internet Mail Extensions)文件上传类库,在Android平台上实现文件上传并同时显示进度条。由于HttpClient已经在Android 6.0(API级别23)中被弃用...
import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import org.apache.commons.httpclient.methods....
6. **异常处理**:捕获和处理网络异常,如连接失败、超时等。 7. **性能优化**:使用连接池,避免频繁创建和关闭连接,提高性能。 8. **日志系统集成**:如何通过Commons-Logging配置和使用不同的日志实现。 掌握...
`commons-io-2.4.jar`是Apache Commons IO库,它提供了许多与输入/输出相关的实用工具类。在网络通信中,我们可能需要读取或写入文件,这个库可以方便地处理这些操作。 `commons-fileupload-1.2.2.jar`是Apache ...
该工具类是java 调用第三方接口时需要使用到的。HttpClientUtil 包含get和post方法。
在Android开发中,HttpClient是一个常用的网络通信库,用于与服务器进行HTTP交互。虽然在Android API Level 23之后被标记为废弃,但仍有许多开发者选择继续使用它,因为它的功能强大且灵活。本篇文章将深入探讨...
本实例描述了Android平台下使用Apache开源项目的HttpClient访问网络的示例。分别使用HttpClient下的两个子实现类,DefaultHttpClient和AndroidHttpClient分别进行演示。
通过以上步骤,你可以使用HttpClient成功地与第三方接口进行交互,无论是GET、POST请求,还是文件上传,都可以妥善处理。在实际项目中,可能还需要根据具体接口的要求调整请求头、超时设置等参数,以确保请求的成功...
本例中可能使用了`org.json`库,因为它是Android SDK自带的。假设`responseBody`是JSON字符串,你可以创建`JSONObject`或`JSONArray`: ```java JSONObject jsonObject = new JSONObject(responseBody); ``` 或者...
- `NOTICE.txt`:通常列出库中可能包含的第三方组件及其许可信息。 在实际项目中,开发者可以使用HttpClient 3.1进行如下操作: 1. **发送GET请求**:获取网页内容,如读取远程JSON或XML数据。 2. **发送POST请求**...
在《Android移动应用开发基础案例教程》的仿美团项目案例中,教材提到需要使用第三方模拟器才能成功访问网络,但其实这可以通过调整Android Studio内置模拟器的配置来解决。 首先,要允许应用访问网络,必须在...
13. **错误处理**:HttpClient提供了丰富的异常类,帮助开发者捕获并处理可能出现的错误情况。 14. **国际化与本地化**:HttpClient库支持多语言环境,适应不同地区的应用需求。 总的来说,Apache HttpClient ...
Android与Apache服务器的数据交互,即“通过HttpClient的方式向服务器发送请求,服务器的Servlet接收并执行数据处理(从数据库中提取数据),最后返回给Android平台,平台解析”的过程。
标题中的"org.apache.commons.httpclient相关架包"指的是这个库的一系列组件,主要包含在`httpclient.jar`文件中。这个JAR文件包含了HttpClient库的所有必需类和资源,可以被导入到Java项目中以实现HTTP通信功能。 ...
在Android API 19(KitKat)及以下版本,HttpClient是内置支持的,但在更高的版本中已被弃用,但仍然可以通过引入第三方库来使用。 1. **配置HttpClient**: 在Android中,我们需要先创建一个`HttpClient`实例,...
虽然Android原生的`HttpClient`已被弃用,但仍有第三方库如Apache HttpClient(如文件中的httpcomponents-client-4.2.5)提供支持。这些库不仅维护了`HttpClient`的功能,还添加了更多特性,如更好的连接管理、错误...
Eclipse IDE 提供了一个便捷的功能,可以导入并查看第三方库的源代码,帮助开发者更好地理解和调试代码。 1. **HttpClient 概述**: - HttpClient 是Apache软件基金会的一个开源项目,它提供了全面的HTTP协议支持...