Я должен отправить свои данные с помощью json и отправить изображение с помощью byte [] в моем json.Теперь я могу получить растровое изображение для преобразования в bytearray, используя следующую строку кодов:
selectedImageBitmap.compress(Bitmap.CompressFormat.JPEG, 100,stream);
byte[] byteArray = stream.toByteArray();
Но я не могу поместить этот байтовый массив в Json.Я использую JSON по умолчанию для Android 2.1.Когда я пытаюсь преобразовать byte [] в JSONArray, это дает мне исключение «Недостаточно памяти».
JSONArray jsonArray = new JSONArray();
for(int i=0;i<byteArray.length;i++) {
jsonArray.put(byteArray[i]);
}
Когда я пытаюсь поместить объект непосредственно в JsonObject, он возвращает странную шестнадцатеричную строку в toString () (вероятно расположение объектов памяти).
Может кто-нибудь, пожалуйста, помогите мне с этим.Есть ли стандартный способ поставить байт [] в json ??
PS: я пытался использовать base64 изначально.Но это часто вызывает исключения из-за нехватки памяти, так как изображения, которые я должен отправлять и получать, большие и, следовательно, там тоже base64!