在android中使用http post发送一个Bitmap的字节数组?

Chr*_*han 2 android bytearray bitmap http-post

在我的应用程序中,我需要调用API使用Http Post将一些信息发送到Web服务器.所以我需要将userid,name,phoneNo和image附加到网址.我需要将图像转换为字节数组并将其附加到url.我使用了以下代码,但它对我不起作用.我只是得到一个像这样的字节数组[B@4055dd90

我的代码是

Bitmap bitmap1 = ((BitmapDrawable) d).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap1.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] bitmapdata = stream.toByteArray();
Run Code Online (Sandbox Code Playgroud)

有人可以帮帮我吗 ?

提前致谢 !

SBe*_*413 5

两件事情:

  1. 图像可以变得非常大.所以,你可能最好使用JPG,因为你可以压缩它(PNG不压缩).因此,您可以使用Bitmap.CompressFormat.JPEG并设置所需的压缩量.
  2. 在您的帖子中发送时,您应该像这样对byte []进行编码: Base64.encodeBase64String( bitmapdata);

如果这对您有用,请告诉我.OH,不要忘记在服务器端取消编码.