将sdk更新为M时,无法解析导入org.apache.http.client错误

ben*_*jja 16 android androidhttpclient

当我将项目导入eclipse时,我遇到了以下错误.我已将我的sdk更新为M.

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.HttpVersion;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.CoreProtocolPNames;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.protocol.HTTP;
Run Code Online (Sandbox Code Playgroud)

sha*_*ali 67

对于eclipse - 在你的sdk中查找库并手动添加它 platforms/android-23/optional/org.apache.http.legacy.jar

对于android studio添加此行 build.gradle

android {
    useLibrary 'org.apache.http.legacy'
}
Run Code Online (Sandbox Code Playgroud)


Jol*_*sta 9

的Apache HTTPNameValuePair在API 23烈已被弃用,必须manualy加入阿帕奇库检查这个.

或者你应该从现在开始使用HttpURLConnection.检查这个答案是否相同


ind*_*eet 6

对于android studio,在app的build.gradle文件中添加一行,如:

android {
       compileSdkVersion 23
       ....
       defaultConfig {
       ..
       ..
       }
 useLibrary 'org.apache.http.legacy'
}
Run Code Online (Sandbox Code Playgroud)