-1

I have some images in a database. The images are sent to Android Studio in the base64 format from the database using an API. How can I display these images using a ListView.

Elletlar
  • 3,136
  • 7
  • 32
  • 38
Anuja
  • 3
  • 2

2 Answers2

0

You can use method to decode Bitmap from Base64 string to Bitmap:

Kotlin version:

fun getBitmapFromBase64(String input) : Bitmap {
    val decodedBytes = Base64.decode(input, 0)
    return BitmapFactory.decodeByteArray(decodedBytes, 0, decodedBytes.length)
}

Java version:

public Bitmap getBitmapFromBase64(String input){
    byte[] decodedBytes = Base64.decode(input, 0);
    return BitmapFactory.decodeByteArray(decodedBytes, 0, decodedBytes.length);
}

after that you can set this method:

youImageView.setImageBitmap(/*your bitmap*/)

in your adapter.

Peter Staranchuk
  • 1,343
  • 3
  • 14
  • 29
0

Replace your base64 value with encodedImage.

  val encodedImage = "data:image/jpeg;base64,..."
        val decodedString = Base64.decode(encodedImage, Base64.DEFAULT)
        val decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.size)

        Glide
            .with(this)
            .load(decodedByte)
            .into(<Your ImageView>)
Rishabh Jain
  • 145
  • 8