Skip to content Skip to sidebar Skip to footer

Android Decode String Base 64 To Bitmap

Hi guys I wanted to ask you one thing, I have a chat that transfers strings and I can even attach of JPEG images before sending them to convert it into a string and then decode in

Solution 1:

The code looks fine, if I had to guess I would say you're getting the Out of Memory error, which is very common when loading images. Check out

http://developer.android.com/training/displaying-bitmaps/load-bitmap.html

for some best practices when loading images.

Solution 2:

The method for Encoding an Image to String Base64 :

publicstatic String encodeToString() {
    StringimageString=null;

    try {
        Bitmapbm= BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
        ByteArrayOutputStreambaos=newByteArrayOutputStream();  
        bm.compress(Bitmap.CompressFormat.PNG, 100, baos); //bm is the bitmap object   byte[] b = baos.toByteArray();
        imageString = Base64.encodeToString(b, Base64.DEFAULT);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return imageString;
}

The method for Decoding String Base64 to Image :

publicstaticvoiddecodeToImage(String imageString) {

    try {
        byte[] imageByte = Base64.decode(imageString, Base64.DEFAULT);
        Bitmapbm= BitmapFactory.decodeByteArray(imageByte, 0, imageByte.length); 
        image_view.setImageBitmap(bm);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

Post a Comment for "Android Decode String Base 64 To Bitmap"