是否有任何方法可以直接在Gradle中包含Apache库以使其与Android 6.0一起使用?
我试图包含这样的库:
compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'org.apache.httpcomponents:httpclient:4.5'
Android Studio无法找到以下导入内容:
import org.apache.http.auth.AuthenticationException;
import org.apache.http.auth.Credentials;
import org.apache.http.auth.MalformedChallengeException;
import org.apache.http.auth.UsernamePasswordCredentials;
import org.apache.http.impl.auth.DigestScheme;
答案 0 :(得分:57)
This page讨论了删除Apache HTTP类的问题,并提出了一个解决方法:
要继续使用Apache HTTP API,必须首先在build.gradle文件中声明以下编译时依赖项:
android { useLibrary 'org.apache.http.legacy' }
在我的情况下,Android Studio仍然抱怨它无法找到这些类,但应用程序确实构建并运行。
该页面的确建议您转到HttpURLConnection。
答案 1 :(得分:1)
根据API 22-23 diff更改,自Android 6.0(Marshmallow)API Level 23起,org.apache.http。*包已被删除。
http://developer.android.com/sdk/api_diff/23/changes.html
via:http://android-developers.blogspot.co.uk/2015/08/m-developer-preview-3-final-sdk.html