Autore Topic: Immagine convertita in stringa Base64  (Letto 683 volte)

Offline k3v1n

  • Utente junior
  • **
  • Post: 61
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung S3
Immagine convertita in stringa Base64
« il: 16 Aprile 2013, 21:04:41 CEST »
0
Salve a tutti,

ho la necessità di convertire un'immagine selezionata dall'utente nella propria libreria immagini, in una stringa Base64.

Se fosse in Java puro non avrei problemi, ma per android ho letto diverse cose e non so qual'è quella corretta.

Ad esempio, molti esempi suggeriscono di usere un metodo simile al seguente:

   public static String getBase64(String filename) {

      Bitmap bm = BitmapFactory.decodeFile(filename);
      ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
      bm.compress(Bitmap.CompressFormat.JPEG, 100, baos); //bm is the bitmap object   
      byte[] byteArrayImage = baos.toByteArray();
      
      String base64String = Base64.encodeToString(byteArrayImage, Base64.DEFAULT);
      
      return base64String;
   }

Il problema è che bm è sempre null.

Avete qualche consiglio o qualche guida consigliata aggiornata?

Grazie

Luca

Offline zababa

  • Nuovo arrivato
  • *
  • Post: 4
  • Respect: +3
    • Mostra profilo
  • Dispositivo Android:
    Sony Xperia Miro
  • Sistema operativo:
    Windows 7
Re:Immagine convertita in stringa Base64
« Risposta #1 il: 16 Aprile 2013, 22:43:29 CEST »
0
Una cosa a cui potrei pensare è che il file non viene trovato, quindi è normale che bm sia null.
Prova a controllare se il sistema trova il file indicato :)
Toast.makeText(getContext(), "Hello there!", Toast.LENGTH_SHORT).show();