Я пробовал несколько решений из Интернета без везения. Как мне изменить размер изображения при загрузке приложения? Я хочу, чтобы это было так, что когда я загружаю файл размером 2 МБ, он отправляется на сервер с размером = 50 КБ. Пожалуйста, помогите мнеРазмер изображения для сжатия андроидов перед отправкой на сервер
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//get image thumbnail
if (requestCode == REQUEST_CODE_PICKER && resultCode == RESULT_OK && data != null) {
ArrayList<Image> images = data.getParcelableArrayListExtra(ImagePickerActivity.INTENT_EXTRA_SELECTED_IMAGES);
absolutePath = null;
// do your logic ....
for (Image img : images) {
Log.v(LOG_TAG, img.getName() + " " + img.getPath());
absolutePath = img.getPath();
absolutePath = String.valueOf(Compressor.getDefault(getContext()).compressToFile(imageFile));
Bundle bundleExtras = data.getExtras();
image = (Bitmap) bundleExtras.get("data");
}
consultantProfileImageView.setImageBitmap(getBitmapFromPath(absolutePath));
new UploadConsultantProfileImageTask(getContext(), absolutePath).execute();
postConsultant();
}
}
public File getBitmapFromPath(String filePath) {
File imageFile = new File(filePath);
Bitmap imageBitmap = null;
imageBitmap = BitmapFactory.decodeFile(filePath);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
InputStream in = new ByteArrayInputStream(bos.toByteArray());
File compressedImageFile = Compressor.getDefault(getContext()).compressToFile(imageFile);
if (compressedImageFile.exists()) {
imageBitmap = BitmapFactory.decodeFile(compressedImageFile.getAbsolutePath());
}
return compressedImageFile;
}
«Я попробовал несколько решений из Интернета, не повезло» - пожалуйста, объясните, что вы пытались (с помощью [mcve]) и что конкретно «не повезло» не означает, что по отношению к тому, что вы пробовали. «когда я загружаю файл размером 2 МБ» - пожалуйста, объясните ** подробно **, какой файл это (PNG, JPEG, RAW, GIF, WEBP и т. д.) и где вы его сохранили. – CommonsWare
Вы хотите, чтобы ваше приложение сжимало изображение или вы планируете сделать это вручную? Пожалуйста, объясните свой вопрос лучше .. – Rippr
Мое приложение должно позволить пользователю добавлять изображение профиля, а затем обрезать/сжать его до 50 кбайт, прежде чем сохранять его на сервере – Fuluza