Convertir ImageView a Base64 en Android

En este post te mostraré cómo convertir un BitMap (obtenido de un ImageView) a su representación como string en Base64.

En otras palabras vamos a convertir una imagen a base64 en Android usando Java. Esto lo utilicé por ejemplo al tomar fotos para una app de deliveries y después subirlas a un servidor como una simple cadena.

Primero: obtener el Bitmap de un ImageView

Debemos tener una referencia al ImageView. Después, para obtener el Bitmap invocamos a getDrawable().getBitmap() así:

En este caso mi ImageView se llama imageViewMuestra. Recuerda que el bitmap podría ser nulo (null), así que siempre debes tener cuidado y hacer comprobaciones; como veremos a continuación.

Convertir Bitmap a Base64 en Android

Ahora que ya tenemos el Bitmap hacemos lo siguiente:

A la cadena fotoEnBase64, o mejor dicho, lo que resulte de Base64.encodeToString lo podemos guardar en una base de datos, loguearlo, etcétera.

Poniendo todo junto

Aquí tengo un ejemplo de todo lo mencionado anteriormente:

Por cierto, no olvides que debes importar ByteArrayOutputStream, Base64, BitmapDrawable y Bitmap:

Y así es como termina este post.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *