android base64数据转换成bitmap时,选择Base64.DEFAULT模式报bad base-64,选择Base64.URL_SAFE模式decodeByteArray报空指针

Base64.decode解码时选择Base64.DEFAULT一定要把code数据的前缀去掉(data:image/png;base64,)
String code="data:image/png;base64,iVBORw0KGgoAAAANSUhEU..."
String replaceCode = code.replace("data:image/png;base64,", "");
byte[] bitmapByte = Base64.decode(replaceCode, Base64.DEFAULT);
Bitmap  bitmap = BitmapFactory.decodeByteArray(bitmapByte, 0, bitmapByte.length);

网上还有一个说法是(根据这个说法改成Base64.URL_SAFE,Base64.decode解码会通过,但是BitmapFactory.decodeByteArray又会报空指针):在涉及到服务器的软件中,由于使用android的Base64解码功能,而服务器端加密为了防止URL格式问题,会采用Apache的URLSafeEncode等方式进行数据安全加密,android端使用Base64.decode(src,Base64.URL_SAFE)不会出现问题 但是如果android自己加密,使用的时Base64.encodeToString(bstr,Base64.DEFAULT)就会有可能出现

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值