У меня есть JSON объект со значением:
{
"ImageBytes": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAGoCAIAAAC/vcqzAAEAAElEQVR4nCz7x66265agaY0xHvua\nz073+..",
"msg": "Success"
}
И это мой код для преобразования моего изображения в flask:
def get_byte_image(image_path):
img = PIL.Image.open(image_path, mode='r')
img_byte_arr = io.BytesIO()
img.save(img_byte_arr, format='PNG')
encoded_img = base64.encodebytes(img_byte_arr.getvalue()).decode('ascii')
return encoded_img
В мои flask Imagebytes тип значения str
И я не знаю, отображать ли байты этого изображения в ImageView в android? Я использую okhttp3, "response-body-string", но это не работает (ошибка), и я использую body-bodyStream, но не показываю в моем изображении. Это мой код:
try {
String string = response.body().string();
JSONObject jsnobject = new JSONObject(string);
String msg = jsnobject.getString("msg");
Log.d("MSG",msg);
String imagebytes = jsnobject.getString("ImageBytes");
Log.d("ImageBytes",imagebytes);
byte[] decodedString = Base64.decode(imagebytes, Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
imgHasil.setImageBitmap(decodedByte);
Toast.makeText(getApplicationContext(),msg,Toast.LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
Log.d("IO Error:",e.getMessage());
} catch (JSONException e) {
e.printStackTrace();
Log.d("JSON Error:",e.getMessage());
}
Надеюсь, кто-нибудь может решить мои проблемы? Спасибо