Bonjour,

Je lance ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
startActivityForResult(new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI), CHOISIR_PHOTO);
Donc là je suis dans la Gallery, je choisi une image et quand je reviens :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
if (requestCode == CHOISIR_PHOTO){
     if (resultCode == Activity.RESULT_OK) {
          Uri selectedImage = data.getData();
          // ...
     }
}
A ce moment là j'ai l'Uri, mais il me fait absolument un File pour appeler :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
BitmapFactory.decodeFile(String pathName);
J'ai essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
BitmapFactory.decodeFile(selectedImage.getPath());
Mais le Bitmap en retour est égal à null.

J'ai essayé avec managedQuery (qui est deprecated) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Cursor imgCursor = managedQuery(selectedImage, new String[] {
          MediaColumns.DATA,
          Mediastore.Images.ImageColumns.ORIENTATION },
     null, null, null);
 
imgCursor.moveToFirst();
File file = new File(imgCursor.getString(0));
imgCursor.getString(0) donne /mnt/sdcard/DCIM/Camera/IMG_20120424_110304.jpg

Mais bon file.exists() retourne false.

Donc voilà j'ai un Uri, il me faut un File et je n'y arrive pas...