如何将图像发送到服务器而不将其下载到内存?

时间:2017-06-11 03:50:24

标签: android image-processing multipart multipartentity

我正在获取Facebook个人资料图片网址,我正在做的是使用

将该图片下载到内存中
String extension = filePath.substring(filePath.lastIndexOf("."));
    ContentValues values = new ContentValues();
    values.put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis());
    values.put(MediaStore.Images.Media.MIME_TYPE, "image/" + extension);
    values.put(MediaStore.MediaColumns.DATA, filePath);
    context.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);

我正在使用Multiparty实体将其上传到服务器:

MultipartEntity entity = new MultipartEntity();
        if (TextUtils.isEmpty(strProfilePic)) {
            File file = new File(strProfilePic);
            if (file.exists()) {
                FileBody fileBody = new FileBody(file);
                entity.addPart("profile_picture", fileBody);
            }
        }

这里的问题是,访问图库中的图像我必须设置权限,这是令人讨厌的,因为用户实际上并没有尝试上传图像,所以如果他否认那么图像就不会上传。

有没有办法将图片发送到服务器而不将其下载到内存

0 个答案:

没有答案