MultipartEntity 是许多与 android 相关的 http 包的一部分。
它是原生 android 包中的一个类,被 Android 的所有者搁置了。本机包的命名空间与一些更健壮的替换包发生冲突 - 导致 Classpath 问题。
它在apache httpclient lib中的A类
IMO - 它实际上更多是关于您希望使用 Gradle 包含在 AS 项目中的库的问题,也许还有 Maven 存储库,用于您的网络连接/服务/HTTP 的项目构建块。
因此,如果您想在 AS 项目中为 apache httpclient(包括您的类 MME)使用 Maven 库,请查看以下内容:
MME sample
https://hc.apache.org/httpcomponents-client-4.3.x/index.html
http://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient/4.3.5
https://code.google.com/p/httpclientandroidlib/
要在您的项目中使用 apache,请在您的“build.gradle”中使用
compile group: 'org.apache.httpcomponents' , name: 'httpclient-android' , version: '4.3.5'
确保在您的顶级“build.gradle”中包含“maven central”回购...
allprojects {
repositories {
mavenCentral()
}
}
这在您的代码中特定类名重叠(使用“HC4”后缀)
需要避免 apache 和原生 android 命名空间冲突!
import ....MimeMultipartEntityHC4;
import org.apache.http.client.methods.HttpDeleteHC4;
import org.apache.http.client.methods.HttpGetHC4;
import org.apache.http.client.methods.HttpPostHC4;
import org.apache.http.client.methods.HttpPutHC4;
import org.apache.http.client.protocol.HttpClientContext;
import org.apache.http.entity.BufferedHttpEntityHC4;
import org.apache.http.entity.ByteArrayEntityHC4;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.StringEntityHC4;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.impl.conn.DefaultManagedHttpClientConnection;
import org.apache.http.protocol.HttpContext;
import org.apache.http.util.EntityUtilsHC4;
注意 apache 示例程序不考虑 android 命名空间冲突。你必须弄清楚这一点。如果 MME 不是原生 android http 包的一部分,则不需要如上所示的 HC4 后缀。