2010-01-09 4 views
2

Je voudrais en quelque sorte envoyer un fichier de mon application sur un appareil Android à mon application sur un autre appareil. Cela peut être fait de toute façon, et je suis ouvert aux suggestions si vous pouvez me dire comment envoyer sur le réseau ou quelque chose comme ça.Comment envoyer/ouvrir des pièces jointes à partir d'une application Android?

Actuellement, je cherche à envoyer le fichier sous forme de pièce jointe, mais je n'ai trouvé aucune bonne documentation sur la façon de le faire. J'ai besoin de deux choses pour accomplir ceci, pouvoir envoyer mon dossier (stocké sur la carte d'écart-type ou quelque part sur l'appareil) comme pièce jointe, et avoir mon application identifiée par androïde comme application pour ouvrir une pièce jointe avec l'extension de fichier (.lst) .

Des pensées?

Les fichiers seront tous des fichiers texte XML assez petits si cela fait une différence.

Répondre

4

Je voudrais envoyer en quelque sorte un fichier de mon application sur un appareil Android à mon application sur un autre appareil. Cela peut être fait de toute façon, et je suis ouvert à suggestions si vous pouvez me dire comment envoyer sur le réseau ou quelque chose comme que.

Écrire un service Web. Ou utilisez Amazon SQS.

pouvoir envoyer mon fichier (stocké sur la carte SD ou quelque part sur l'appareil) en tant que pièce jointe

Comme il est écrit en here, vous pouvez essayer:

Intent sendIntent = new Intent(Intent.ACTION_SEND); 

sendIntent.putExtra(Intent.EXTRA_SUBJECT, subject); 
sendIntent.putExtra(Intent.EXTRA_STREAM, ...); 
sendIntent.setType(...); 

où la première ellipse est le chemin vers votre fichier choisi et la seconde ellipse est un type MIME approprié.

et ont reconnu mon application par Android comme l'application d'ouvrir une pièce jointe avec le fichier extention (.lst)

Ne jamais se fier sur les extensions de fichier. Utilisez les types MIME. Vous pouvez configurer une activité avec un filtre d'intention qui prend en charge ACTION_VIEW pour votre type MIME.

+0

J'ai réussi à faire fonctionner la partie envoi, mais je n'arrive pas à obtenir l'application de messagerie pour me laisser ouvrir le fichier. J'ai spécifié le type MIME et ajouté un filtre d'intention, mais il n'y a toujours pas de bouton de prévisualisation ou de téléchargement dans l'application de messagerie. Qu'est-ce qui me manque/comment devrais-je faire cette partie? – CodeFusionMobile

+0

Je vous recommande d'ouvrir une nouvelle question, et collez-y votre manifeste (ou au moins l'élément en question), afin que nous puissions voir votre filtre d'intention. – CommonsWare

+0

J'ai essayé de le faire, mais il a ouvert un MMS, avec autant que je sache, il manquait le fichier joint. Notez que cela a été essayé sur l'émulateur. – finiteloop

1

Je l'ai fait pour traiter les fichiers vcf attachés aux mails et cela a fonctionné. Voici l'intention Filer:

 <intent-filter> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <action android:name="android.intent.action.VIEW" /> 
      <data android:mimeType="text/x-vcard" /> 
     </intent-filter> 

Voir tout le code dans http://code.google.com/p/card-catcher.

Questions connexes