HttpClient不会在Android Studio中导入

我有一个用Android Studio编写的简单类:

package com.mysite.myapp;

import org.apache.http.client.HttpClient;

public class Whatever {
    public void headBangingAgainstTheWallExample () {
        HttpClient client = new DefaultHttpClient();
    }
}

并从此我得到以下编译时错误:

Cannot resolve symbol HttpClient

Android Studio SDK中是否包含HttpClient ? 即使它不是,我将它添加到我的Gradle构建中,如下所示:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'org.apache.httpcomponents:httpclient:4.5'
}

无论是否有最后一个编译行,错误都是一样的。 我错过了什么?


HttpClient不支持任何更SDK 23.你必须使用URLConnection或降级到SDK 22( compile 'com.android.support:appcompat-v7:22.2.0'

如果你需要sdk 23,把它添加到你的gradle中:

android {
    useLibrary 'org.apache.http.legacy'
}

您也可以尝试直接下载并将HttpClient jar包括到您的项目中,或者使用OkHttp代替


HttpClient已在API级别22中被弃用,并在API级别23中被删除。如果必须的话,您仍然可以在API Level 23及更高版本中使用它,但最好移动到受支持的方法来处理HTTP。 所以,如果您使用23编译,请将其添加到您的build.gradle中:

android {
    useLibrary 'org.apache.http.legacy'
}

在下面的链接TejaDroid的答案帮助了我。 无法在Android Studio中导入org.apache.http.HttpResponse

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'
    ...
}
链接地址: http://www.djcxy.com/p/91387.html

上一篇: HttpClient won't import in Android Studio

下一篇: What is the real purpose of tools:context in Android XML