A solução deste link é absurda. Não faça desse jeito. Ele codifica conteúdo binário em Base64, e isso vai causar vários problemas: gasta mais processamento do que deveria, gasta mais transferência do que deveria, gasta mais tempo do que deveria, e provavelmente outros problemas que não lembro agora.
Com HTTP, você deve enviar imagens como body da sua request, ou como um item de um body multipart.
Como, exatamente, fazer isso, vai depender da biblioteca que você está usando para fazer a requisição HTTP.
O procedimento para o webservice ler a imagem recebida depende do framework que você usa.
--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Eu resolvi utilizando multipart
O WS eh em Java? Vc fez usando algum framework?
-- Catoto
Não necessariamente.
Como vc vai mandar um formulário via postal, vc pode mandar o file e outros elementos.
Logo mais eu posto como foi a minha solução.
// convert from bitmap to byte array
public byte[] getBytesFromBitmap(Bitmap bitmap) {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.JPEG, 70, stream);
return stream.toByteArray();
}
// get the base 64 string
String imgString = Base64.encodeToString(getBytesFromBitmap(someImg),
Base64.NO_WRAP);
Diogo,
Preste atenção: estamos tentando te dizer que o Multipart existe *justamente* para enviar várias coisas diferentes em uma requisição só, exatamente como você precisa.
A imagem não vai estar dentro do JSON, mas vai estar na mesma requisição que ele.
Aprobeitanto o topico Li alguna ves ke o android utiliza a lib apache httpclient mas na versao ke nao soporta post multipart y e necesario incluir la no libs ... alguien pode confirmar?
Send from my Android