1. 程式人生 > >Android開發 - ImageView加載Base64編碼的圖片

Android開發 - ImageView加載Base64編碼的圖片

base64編碼 [] 地址 加載本地 .cn ... ear 情況 ring

在我們開發應用的過程中,並不是所有情況下都請求圖片的URL或者加載本地圖片,有時我們需要加載Base64編碼的圖片。這種情況出現在服務端需要動態生成的圖片,比如:

  1. 二維碼
  2. 圖形驗證碼
  3. ...

這些應用場景有個共同點就是,這些圖片都是由服務器動態生成,並不需要生成後保存成文件再返回給客戶端。

Android中ImageView加載Base64圖片其實非常簡單,並不需要引入第三方庫,方法如下:

import android.util.Base64;

# 代碼片段
String base64 = "data:image/png;base64......"
byte[] decodedString = Base64.decode(base64, Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
imageView.setImageBitmap(decodedByte);

這樣就可以將Base64的圖片加載到ImageView中了。其實原理很簡單,就是先把Base64編碼字符串解碼成Bitmap,然後再講Bitmap設置到ImageView中。

如有更多疑問,請參考我的其它Android相關博客:我的博客地址

Android開發 - ImageView加載Base64編碼的圖片