2011-03-14 11 views
6

Empiezo la intención de elegir una imagen de la galería, pero la intención siempre vuelve con el código de resultado RESULT_CANCELED. He intentado con muchos códigos diferentes, pero no hay nada que me ayude a pensar que tal vez me esté perdiendo algo, como poner algo en la actividad del manifiesto de Android.Android: Intento de la galería que devuelve resultCode == RESULT_CANCELED

Mi Código:

// The Intent 
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
startActivityForResult(intent, 0); 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 

    super.onActivityResult(requestCode, resultCode, data); 

    if (resultCode == RESULT_OK){ 
     Uri targetUri = data.getData(); 
     Bitmap bitmap; 
     try { 
      bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(targetUri)); 
      profileImage.setImageBitmap(bitmap); 
     } catch (FileNotFoundException e) { 
      e.printStackTrace(); 
     } 
    } 
} 

le agradecería un poco de ayuda;)

+0

puso el acabado de la actividad() código también –

+0

Hmm Qué quiere decir poner acabado() después de startActivityForResult? Lo único que esto hace por mí es terminar la actividad (que no quiero, quiero que vuelva a la misma actividad) y seguir con RESULT_CANCELED. – DecodeGnome

Respuesta

16

OK así que resolvió este. Mi problema resultó ser que se llamaba al método onActivityResult() antes de que Gallery Intent hubiera finalizado. Encontré la solución aquí: onActivityResult() called prematurely

Básicamente, he especificado que la actividad sea "singleTask" en el manifiesto. Cambiándolo a "singleTop" lo resolvió para mí.

+0

Me enfrenté al mismo problema cuando el modo de inicio de mi actividad era "singleInstance". Cambiarlo a "singleTop" resolvió mi problema. Gracias por compartir tu solución. –

+0

pero este problema no se resuelve incluso con su solución – Trikaldarshi

+0

Problema que ocurre al enviar correo – Trikaldarshi

1

¡Eso me salvó la vida! \ 0/

androide: launchMode = "singleTop"

Cuestiones relacionadas