小编Haf*_*rdi的帖子

转换 Android Base64 位图并在 HTML Base64 图像上显示

我开发了一个自定义信使应用程序,它将消息从客户端(Android)发送到另一个客户端(网络)。我的问题是当我发送图像文件时,我将其编码为Base64字符串,然后将其发送给另一个客户端。当接收方客户端为Android时,应用程序成功将Base64String解码为位图图像。但是当接收方客户端是 Web 应用程序时,Web 应用程序无法使用以下方式对其进行解码和显示:

<img id="img" src="data:image/jpeg;base64,3iVBORw0KGgoAAAANSU...">
Run Code Online (Sandbox Code Playgroud)

我的 Java 编码/解码方法

    public static Bitmap base64StringToBitmap(String base64) {
        byte[] bytes = Base64.decode(base64, Base64.URL_SAFE);
        return BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
    }

    public static String bitmapToBase64String(Bitmap bmp, Bitmap.CompressFormat format, int quality) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();  
        bmp.compress(format, quality, baos);
        byte[] bytes = baos.toByteArray();
        return Base64.encodeToString(bytes, Base64.URL_SAFE);
    }
Run Code Online (Sandbox Code Playgroud)

我尝试将编码方法更改为Base64.DEFAULT,但仍然Base64无法使用 .html 在 HTML 中显示字符串data:image/jpeg;base64。AndroidBase64字符串和Base64用于在 HTML 中显示图像的字符串之间有什么区别吗?请给我建议解决方案。谢谢

编辑 :

这是从我的 Android 应用程序生成的带有填充的 base64 字符串示例。我未能在 …

html java base64 android bitmap

5
推荐指数
1
解决办法
6665
查看次数

标签 统计

android ×1

base64 ×1

bitmap ×1

html ×1

java ×1