无法在Android Studio中导入org.apache.http.HttpResponse

我想在Android Studio中使用这些库:

import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; 

我正在跟随一个教师正在使用Eclipse的video教程,所以我知道它的工作原理。

但是,为了使用它们,还需要添加哪些附加内容/库?

Solutions Collecting From Web of "无法在Android Studio中导入org.apache.http.HttpResponse"

HttpClient在Android 5.1中被弃用,并从Android 6.0中的Android SDK中被移除。 虽然在Android Studio中继续使用Android 6.0中的HttpClient有一个解决方法 ,但您确实需要转移到其他方面。 这个“别的东西”可能是:

  • 内置经典的Java HttpUrlConnection
  • Apache的Android独立包装HttpClient
  • OkHttp (我的build议)
  • AndroidAsync

或者,根据HTTP工作的性质,您可以select支持更高阶操作的库(例如,对Web服务API进行改造)。

在一个捏,你可以启用传统的API,通过在你的模块的build.gradle文件的androidclosures中使用useLibrary 'org.apache.http.legacy' 。 然而,谷歌多年来一直build议人们停止使用Android内置的HttpClient,因此,这应该是一个阻碍,而您正在更加长期地转向另一个API。

HttpClient在sdk 23中被弃用

你必须通过URLConnection或者sdk降低到22

你还需要更新gradle sdk 23的HttpClient

你必须在app / gradle中添加HttpClient的依赖关系

 dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:appcompat-v7:23.0.1' compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2' ... } 

主build.gradle – /build.gradle

 buildscript { ... dependencies { classpath 'com.android.tools.build:gradle:1.3.1' // Versions: http://jcenter.bintray.com/com/android/tools/build/gradle/ } ... } 

模块特定的build.gradle – /app/build.gradle

 android { compileSdkVersion 23 buildToolsVersion "23.0.1" ... useLibrary 'org.apache.http.legacy' ... } 

根据Apache网站,如果您使用的是Android API 23或更新版本,那么您需要包含Gradle依赖项:

 dependencies { compile group: 'cz.msebera.android' , name: 'httpclient', version: '4.4.1.1' } 

来源: https : //hc.apache.org/httpcomponents-client-4.5.x/android-port.html

如果您要开始开发,请从方块开始执行OkHttp,否则,如果您需要保持以前的代码运行,请将旧的库添加到您的项目依赖项中:

 dependencies { compile group: 'org.apache.httpcomponents' , name: 'httpclient-android' , version: '4.3.5.1' } 

用这个:-

 compile 'org.jbundle.util.osgi.wrapped:org.jbundle.util.osgi.wrapped.org.apache.http.client:4.1.2'