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

The import org.apache.http.client cannot be resolved error when I update sdk to M

将项目导入 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;

apache httpNameValuePair 已在 api 23 中弃用。您必须手动添加 apache 库 check this

或者您应该从现在开始使用 HttpURLConnection。检查此 answer 是否相同

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

对于 android studio 在 build.gradle

中添加此行
android {
    useLibrary 'org.apache.http.legacy'
}

对于 android studio 在 build.gradle 应用文件中添加一行,例如:

android {
       compileSdkVersion 23
       ....
       defaultConfig {
       ..
       ..
       }
 useLibrary 'org.apache.http.legacy'
}

实现相同目的的另一种方法是,

找到 Android/Sdk/platforms/android-23/optional, 中的 org.apache.http.legacy.jar 将其添加到您的依赖项中。