Android — Есть ли другие способы преобразования растрового изображения для загрузки на сервер php без использования кодировки / декодирования Base64?

Я хочу передать растровое изображение, преобразовать в JPEG (что я могу сделать) и опубликовать его через http на php-сервер. После просмотра php-скрипта на сервере он вообще не использует base64 endcoding / decoding. Я видел и использовал кодирование / декодирование Base64, как указано ниже, но API сервера его не принимает. Я также сомневаюсь, что в настоящее время я могу обновить API на сервере php. API на сервере в настоящее время поддерживают 32-битные iPhone, в случае, если это дает ключ.

Также есть ли проблемы с самим изображением?

Я не видел никакого декодирования / кодирования в php-коде, кроме этого стандартного ‘move_uploaded_file’, и я не программист php.

Это не работает для конкретного php-сервера.

public static String encodeTobase64(Bitmap image) {
Bitmap immage = image;

Integer quality = 80;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
immage.compress(Bitmap.CompressFormat.JPEG, quality, baos);
byte[] b = baos.toByteArray();
String imageEncoded = Base64.encodeToString(b, Base64.DEFAULT);
return imageEncoded;

}

public static Bitmap decodeBase64(String input) {byte[] decodedByte = Base64.decode(input, 0);
return BitmapFactory.decodeByteArray(decodedByte, 0, decodedByte.length);
}

Я также попробовал кодировщик / декодер Base32.

public static String encodeToBase32(Bitmap image) {
Bitmap immage = image;

Integer quality = 90;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
immage.compress(Bitmap.CompressFormat.JPEG, quality, baos);
byte[] b = baos.toByteArray();
String imageEncoded = Base32.encode(b);
return imageEncoded;

}

а также попробовал просто массив байтов, изменив 2-ю до последней строки выше

String imageEncoded = String.valueOf(b);

Есть ли другие способы отправить изображение?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …