Convertir le fichier:// régime à teneur://
Je suis dans la course pour le problème avec l'aide de Droid X de Fichiers de l'application et Astro gestionnaire de fichier pour sélectionner un fichier image. Ces deux applications de retour de l'image sélectionnée avec le système de "file://", tandis que la Galerie renvoie l'image avec le régime "content://". Comment puis-je convertir des le premier schéma pour la deuxième. Ou comment décoder l'image avec le second format?
OriginalL'auteur KITT | 2011-06-10
Vous devez vous connecter pour publier un commentaire.
Vous voulez probablement pour convertir le contenu://dans le fichier://
Pour les images de la galerie, essayez quelque chose comme ceci:
Uri.getPath()
renvoie uneString
, mais sinon +1 pour ce, parce que cela fonctionne.OriginalL'auteur cjb
Utilisation ContentResolver.openInputStream() ou des méthodes pour accéder aux flux d'octets. Vous ne devriez pas généralement être se soucier de savoir si c'est un fichier: ou contenu: URI.
http://developer.android.com/reference/android/content/ContentResolver.html#openInputStream(android.net.Uri)
il y a un bug avec l'Uri lorsque vous échangez la carte sd pour une autre carte sd. L'Uri de points d'une image différente.
Ce n'est pas une Uri bug, c'est juste... et bien, qu'attendez-vous? 🙂 Si vous avez un chemin d'accès à un fichier, et remplacez le système de fichiers sous-jacent à quelque chose d'autre avec des contenus différents, vous ne pouvez pas compter sur ce chemin est significative plus. La seule ride ici, c'est que les Uri pour les medias fournisseur de contenu ne sont pas des chemins mais avec un ID unique pour chaque fichier qu'il a analysé. Lorsque vous mettez dans une autre carte SD, l'ancienne base de données seront supprimées et les fichiers analysés et ont assigné de nouvelles id, donc si vous avez des URIs de l'ancienne carte ils seront soit invalide ou au hasard ref un fichier sur la nouvelle carte.
OriginalL'auteur hackbod
Ici, le problème est que, pour tous les fichiers que l'on ne peut pas avoir un contenu Uri (contenu://). Parce que le contenu de l'uri est pour les fichiers qui font partie de
MediaStore
. Par exemple: images, audio & vidéo.Toutefois, pour les fichiers pris en charge, nous pouvons trouver son chemin absolu. Comme pour les images comme suit-
Le générique de la méthode est comme suit.
OriginalL'auteur Nizam