conn.addRequestProperty(entity.getContentType().getName(), entity.getContentType().getValue());
在运行操作系统版本4.1的三星设备上崩溃。在Marshmallow Nexus 6设备上,它工作得非常好。有什么问题?
Gradle文件
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.gms:play-services:8.4.0'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
我的libs文件夹中有httpclient-4.3.3.jar HttpClient的缓存-4.3.3.jar 的HttpCore-4.3.2.jar httpmime-4.3.3.jar
答案 0 :(得分:1)
自marshmallow以来,Apache http客户端已被删除。
请参阅此处Apache HTTP Client Removal
解决方案(关于嵌入客户端):
android {
useLibrary 'org.apache.http.legacy'
}
更新: 关于特定问题,请参阅相关的post
顺便说一下,在我的项目中,我无法将apache http客户端添加为库,因为包名与embed cliend冲突。我必须使用this或here
所述答案 1 :(得分:-1)
用于Marshmallow Apache HTTP客户端删除
android {
useLibrary 'org.apache.http.legacy'
}
尝试一次
app / build / libs文件>>项目结构>>依赖性>> +>>文件依赖性>>然后将其更改为提供而不是编译(如果导入的jar太多,则编译将导致非零值为1的java退出。
三星已经对sdk进行了定制,因此可以包含更多的罐子..
答案 2 :(得分:-1)
请包含useLibrary url,如下所示
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
useLibrary 'org.apache.http.legacy'