gpt4 book ai didi

android - 如何在 Android 中使用 Multipart?

转载 作者:行者123 更新时间:2023-11-29 19:41:37 25 4
gpt4 key购买 nike

我想一次上传多张图片。所以我找到了“MultipartEntityBuilder”,但它运行不正常。

这是我的来源...

public void executeMultipartPost() throws Exception {
try {

MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.setCharset(Charset.forName("UTF-8"));
builder.setMode(HttpMultipartMode.BROWSER_COMPATIBLE);
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
byteArray = byteArrayOutputStream.toByteArray();


builder.addTextBody("file1", byteArray.toString());
builder.addTextBody("file2", byteArray2.toString());

// send
InputStream inputStream = null;
HttpClient httpClient = AndroidHttpClient.newInstance("Android");
HttpPost httpPost = new HttpPost(UPLOAD_URL);
httpPost.setEntity(builder.build());
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
inputStream = httpEntity.getContent();

// response
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
StringBuilder stringBuilder = new StringBuilder();
String line = null;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line + "\n");
}
inputStream.close();

// result
String result = stringBuilder.toString();

} catch (Exception e) {
e.printStackTrace();
}
}

调试时,'httpPost.setEntity(builder.build())' 这一行是错误的。

并且没有“Caused by~”,但是 Process: NoSuchFiledError in logcat...

但我想我将图像制作成位图然后将其发送到 FTP。怎么了..?谢谢。

最佳答案

您的代码可以摆脱已弃用的 MultipartEntity 代码并使用 MultipartEntityBuilder。但是这里涉及的具体问题是核心Android库与新添加的库冲突。现在也有可用的 Maven 存储库。您可以尝试将以下代码写入以下文件:

build.grade (Module:app)
compile('org.apache.httpcomponents:httpmime:4.3.6') {
exclude module: 'httpclient'
}

compile 'org.apache.httpcomponents:httpclient-android:4.3.5'

Getting NoSuchFieldError INSTANCE org/apache/http/message/BasicHeaderValueParser

关于android - 如何在 Android 中使用 Multipart?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38579669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com