Autore Topic: Da un'activity ottenere dalla foto di Picasa visualizzate nella galleria  (Letto 410 volte)

Offline osa100

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
Salve,
nella mia activity vorrei ricevere le foto selezionate dall'utente nella galleria built-in di Android.
Per le foto salvate in locale non c'è alcune problema, ricevo dall'activity della galleria l'URI della foto selezionata, cosa diversa accade per le foto di Picasa le quale hanno un path uguale a NULL.
Per ottenere la foto di Picasa ho usato questo codice trovato in rete:

Codice (Java): [Seleziona]
   

private File mTempFile;

public showImagePicker() {          
mTempFile = getFileStreamPath("yourTempFile");        
mTempFile.getParentFile().mkdirs();        
mTempFile.createFile()
Intent intent = new Intent(Intent.ACTION_GET_CONTENT, null);        
intent.setType("image/*");        
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(mTempFile));        
intent.putExtra("outputFormat",Bitmap.CompressFormat.PNG.name());                                
startActivityForResult(intent,REQUEST_CODE_CHOOSE_PICTURE);    
}

protected void onActivityResult(int requestCode, int resultCode, Intent data) {    
 case REQUEST_CODE_CHOOSE_PICTURE:                
Uri imageUri = data.getData();                
if (imageUri == null || imageUri.toString().length() == 0) {                    
 imageUri = Uri.fromFile(mTempFile);                    
 file = mTempFile;                
}                                    
 if (file == null) {                                        
//use your current method here, for compatibility as some other picture chooser might not handle extra_output                                    
}
}  
 

Il file temporaneo mTempFile resta vuoto.
Sapete aiutarmi. Grazie.

Offline osa100

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
Re:Da un'activity ottenere dalla foto di Picasa visualizzate nella galleria
« Risposta #1 il: 11 Gennaio 2012, 14:49:09 CET »
0
Ho notato che si aggiunge:

Codice (Java): [Seleziona]
intent.putExtra("crop","true");
abilitando la possibilità di ritagliare la foto scelta, il tutto funziona.
A quanto pare è necessario aggiungere questa opzione.