Je suis en train de charger une image dans un ImageView
de la galerie en utilisant Picasso
.Impossible de charger Image à partir du fichier: // chemin dans Picasso
Voici le code
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode!= Activity.RESULT_OK) return;
switch (requestCode) {
case PICK_GALLERY_IMAGE_REQUEST: {
Uri imageUri = data.getData();
Log.d(DEBGUG_TAG,"Image URI: "+imageUri.toString());
Picasso picasso = Picasso.with(getApplicationContext());
picasso.setLoggingEnabled(true);
picasso.load(imageUri).error(R.drawable.c).into(testImgView, new com.squareup.picasso.Callback(){
@Override
public void onSuccess() {
Log.d(DEBGUG_TAG,"Success loading image from uri:PICASSO");
}
@Override
public void onError() {
Log.d(DEBGUG_TAG,"Cannot load image");
}
});
Le problème est tout en sélectionnant une image de la galerie retourne un chemin de fichier
D/debug: Image URI: file:///storage/emulated/0/DCIM/Camera/IMG_20170126_211524.jpg
Ce qui ne semble pas travailler avec Picasso retours erreur et enregistre D/debug: Cannot load image
dans la méthode d'erreur. Cependant, le choix de la même image d'une autre application qui renvoie Uri
comme: D/debug: Image URI: content://com.google.android.apps.photos.contentprovider/-1/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F90455/ORIGINAL/NONE/1757236944
est réussi.
Un moyen de charger l'image à partir du chemin du fichier?
Dans quelle version de SDK votre application est en cours d'exécution? S'il vous plaît vérifier le logcat si vous obtenez 'FileUriExposedException' – tahsinRupam