Android - Como converter imagem de webview.capturePicture () para byte [] e de volta para bitmap
Eu estou tentando capturar a imagem que estou recebendo de webview.capturePicture () para salvá-lo em um sqliteDatabase, para que eu precise converter a imagem para um byte [] para poder salvá-lo como um BLOB na minha tabela e, em seguida, capaz de recuperar esse byte [] e convertê-lo de volta para um bitmap.
Aqui está o que estou fazendo:
<code>Picture p = webView.capturePicture(); ByteArrayOutputStream bos = new ByteArrayOutputStream(); p.writeToStream(bos); byte[] ba = bos.toByteArray()); </code>
Eu então recupero a imagem por:
<code>byte[] image = cursor.getBlob(imageColumnIndex); Bitmap bm = BitmapFactory.decodeByteArray(image, 0, image.length); </code>
Eu sou capaz de recuperar o byte [] muito bem, mas eu recebo um bitmap nulo o tempo todo de bitmapfactory.
Eu também noto que se eu log.d (TAG, "" + bos) eu recebo uma longa seqüência de bytes como esperado, mas se eu fizer o mesmo para ba logo após eu fazer o bos.toByteArray () eu apenas recebo um array curto, alguma coisa assim: [B @ 2b0a7c60
Eu estou supondo que estou tendo problemas talvez para converter por OutputStream para byteArray. Isso porque o método capturePiture () retorna um OutputStream em vez de um ByteArrayOutputStream?
Qualquer ajuda seria apreciada.