Android de l'application Gmail-Mail, en pièce Jointe URI problème
Je dois ouvrir le fichier de la pièce jointe à partir de l'application gmail à travers mon app.
Je obtenir le lien dans le modèle comme contenu://gmail-ls/messages/mailid%40gmail.com/4/attachments/0.1/le MEILLEUR/faux
Mon problème est que le lien n'est pas unique pour chaque fichier dans le client de messagerie..
Un ou plusieurs fichiers a la même Uri.
Est-il possible d'obtenir le nom de fichier ou les courriels envoyés à jour de sorte que je peux venir sur cette question.
Merci d'avance.
OriginalL'auteur Jana | 2011-06-30
Vous devez vous connecter pour publier un commentaire.
Comme indiqué ci-dessous, vous pouvez faire une copie locale de la même attachement et de travailler sur ce fichier. Directement vous ne serez pas en mesure d'accéder au fichier qui est sur le serveur gmail.
Reember pour l'ajouter à votre manifeste.
OriginalL'auteur LokiDroid
J'ai résolu ce problème d'une manière indirecte.
J'ai identifié le caractère unique à l'aide de la taille du fichier.
Dans le cas où si vous avez besoin du code ici, il est
OriginalL'auteur Jana
J'ai récemment tombé sur le même problème et trouvé un moyen d'obtenir le nom de fichier:
À utiliser:
Ce qui concerne.
OriginalL'auteur Luis
Merci Lokesh Kumar, votre code a beaucoup aidé!
Cependant, je ne tiens à souligner un problème avec votre solution.
Lors de l'utilisation de ce code de la vôtre:
il n'a copié le fichier en entier, mais je pense qu'il y a un problème.
Lorsque vous faites
attachment.read(buffer)
, vous êtes la lecture de 1024 octets à chaque fois et permet de dire, que vous avez un fichier de 2000 octets.Sur la première lecture, vous obtiendrez les 1024 premiers, puis sur la prochaine et dernière lecture, vous obtiendrez la dernière 976 octets et de ce que j'ai vu, dans ce cas, le tampon ne pas nettoyer les derniers octets de l'aperçus de lire, à la fin du fichier sera 976 octets à partir de la dernière lecture, et le reste 48 à partir de la lecture avant le dernier..
Cela permettra à la fin du fichier incorrectes.
Dans mon cas, La pièce jointe est un fichier kml (l'emplacement du fichier de données en format xml) que j'ai eu à copier. En essayant d'utiliser ce code que j'ai toujours eu de la fin de la kml incorrect. après la balise de fermeture, j'ai un peu de texte à partir de la lecture avant le dernier.
Quelque chose comme ceci:
Bien sûr, ce n'est pas valide kml, et il fera des erreurs lorsque vous essayez d'pars.
Donc, j'ai utilisé une partie de code différent pour lire à partir du flux d'entrée qui a fait le meilleur travail.
C'est mon code pour copier le fichier:
OriginalL'auteur Moti Bartov