よりもはるかに大きい文字列、 を返し、私が使用してバイト配列に変換しますAndroidのBase64では、私は3.30メガバイトのサイズの画像を持っている私は、サーバーに画像を送信する必要が画像
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
をその後、BASE64へ
Base64.encodeToString(byteArray , Base64.DEFAULT)
EDIT:バイト配列(bytearray)の長さをチェックすると、20 MBです。 ただし、PCまたは携帯電話のサイズは3.30 MB
返される文字列の長さは28 MBですが、説明と解決方法はありますか?
の6ビットのみを使用していますfは「私は、3.30メガバイトのサイズの画像を持っている」 - **あなたはそれで意味しています正確に何** ?あなたは 'bmpで消費されるメモリを測定していますか?あなたは 'bmp'を作るために使うファイルのサイズを参照していますか?他に何か意味がありますか? – CommonsWare
画像のプロパティをクリックすると表示されるサイズです。 –