我需要发送存储在文件中的所有图像。现在我通过指定其名称在按钮点击上发送一个图像。但如何发送保存在某个文件夹中的按钮点击所有图像
public class UploadImagesToServer {
public static void postImage(String ImageLink){
RequestParams params = new RequestParams();
try {
params.put("file", new File(ImageLink));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
AsyncHttpClient mNewCaller = new AsyncHttpClient();
mNewCaller.get(Constants.MediaUpload, params, new JsonHttpResponseHandler() {
@Override
public void onStart() {
super.onStart();
}
@Override
public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
super.onSuccess(statusCode, headers, response);
Log.e("response page", response.toString());
}
@Override
public void onSuccess(int statusCode, Header[] headers, String responseString) {
super.onSuccess(statusCode, headers, responseString);
Log.e("frag", responseString + " " + statusCode);
}
@Override
public void onSuccess(int statusCode, Header[] headers, JSONArray responseString) {
super.onSuccess(statusCode, headers, responseString);
Log.e("frag", responseString + " " + statusCode);
}
@Override
public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
super.onFailure(statusCode, headers, throwable, errorResponse);
Log.e("fail 3", statusCode + "" + errorResponse);
}
@Override
public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
super.onFailure(statusCode, headers, responseString, throwable);
Log.e("fail 3", statusCode + "" + responseString);
}
@Override
public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONArray errorResponse) {
super.onFailure(statusCode, headers, throwable, errorResponse);
Log.e("fail 3", statusCode + "" + errorResponse);
}
});
}
}
以上代码用于发送图像
continueBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String filePath = Environment.getExternalStorageDirectory()
.getAbsolutePath() + File.separator + "/Omoto Images/background image.jpg";
UploadImagesToServer.postImage(filePath);
}
});
这是为了调用postImage方法
答案 0 :(得分:0)
上传多张图片的最佳流程。 您的图片上传代码已经实现,您只需更改流程即可。
您可以将图像路径存储在列表(或类似的东西)中并保存 列表(可能是共享首选项或sqlite)。 完成上传图片后,将其从该列表中删除并继续下一个图片,依此类推,直至列表为空。
上传时,如果互联网连接中断,则不会影响您, 您将始终保存仍要上传的图像列表。
获取所有图片路径: 您需要扫描目录和存储图像路径,然后才能上传检查路径文件是否存在,因为有时可能会移除或移动图像。