如何使用翻新2从图库上传图像文件?

时间:2018-08-01 11:59:36

标签: android retrofit2

我对android有点陌生,一直在尝试使用翻新2向服务器发送数据。我正在做的是从图库中选择图像并获取其路径,但是我对上载的工作方式了解较少。

我从图库中获取了多个图像uri,并使用此功能获取了它们的路径

public String getImagePath(Uri uri) {
    String selectedImagePath;
    // 1:MEDIA GALLERY --- query from MediaStore.Images.Media.DATA
    String[] projection = { MediaStore.Images.Media.DATA };
    Cursor cursor = managedQuery(uri, projection, null, null, null);
    if (cursor != null) {
        int column_index = cursor
                .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        cursor.moveToFirst();
        selectedImagePath = cursor.getString(column_index);
    } else {
        selectedImagePath = null;
    }

    if (selectedImagePath == null) {


        selectedImagePath = uri.getPath();
    }
    return selectedImagePath;
}

这给了我这样的路径。

例如:存储/仿真/ 0 /下载/cheque_image.jpeg

我只需要这些路径即可创建文件

File file = new File(getimagepath(uri));



 RequestBody requestBody = RequestBody.create(MediaType.parse(getContentResolver().getType(fileUri)), file);

    return MultipartBody.Part.createFormData(partName, file.getName(),requestBody);

从路径创建的文件是否足以使用分段上传,还是应该使用uri的inputstream传递到文件内部然后上传。

OutputStream outputStream = new FileOutputStream(file);

0 个答案:

没有答案