问题描述
有什么方法可以将 Apache 库直接包含在 Gradle 中以使其与 Android 6.0 一起使用?
Is there is any way to include the Apache library directly in Gradle to make it work with Android 6.0 ?
我尝试包含这样的库:
compile 'org.apache.httpcomponents:httpcore:4.4.1'
compile 'org.apache.httpcomponents:httpclient:4.5'
Android Studio 无法找到以下导入:
And Android Studio couldn't manage to find the following import:
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;
推荐答案
这个page 讨论了 Apache HTTP 类的删除,并提出了一种解决方法:
This page discusses the removal of the Apache HTTP classes, and it suggests a workaround as well:
要继续使用 Apache HTTP API,您必须首先在 build.gradle 文件中声明以下编译时依赖项:
To continue using the Apache HTTP APIs, you must first declare the following compile-time dependency in your build.gradle file:
android {
useLibrary 'org.apache.http.legacy'
}
在我的例子中,Android Studio 仍然抱怨找不到这些类,但应用确实构建并运行了.
In my case Android Studio still complained that it couldn't find these classes, but the app did build and run.
不过,该页面确实建议您移至 HttpURLConnection.
The page does recommend you move to HttpURLConnection, though.
这篇关于与 Android 6.0 (Marshmallow) 的 Apache HTTP 连接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!