2011-04-25 3 views
1

Mon application contient une chaîne contenant l'URL d'un fichier, généralement quelque chose comme un document Word ou un fichier PDF. Je veux donner à l'utilisateur un moyen de télécharger le fichier de la même manière que s'il avait cliqué sur un lien dans le navigateur (en laissant le navigateur le stocker dans l'emplacement par défaut, etc.). Pour l'instant, je le fais en lançant une intention ACTION_VIEW. Cela fonctionne dans la plupart des cas, mais il y a plusieurs problèmes. Souvent, la fenêtre du navigateur tente d'afficher un message qui, pour une raison quelconque, disparaît immédiatement et ne peut pas être lu. Parfois, le téléchargement échoue et je ne peux pas le détecter. Si cela réussit, tout ce que l'utilisateur voit réellement est une petite icône dans la barre d'état supérieure qu'il doit savoir rechercher.Android: télécharger le fichier en utilisant le navigateur

Y a-t-il une meilleure façon de procéder? Un moyen de démarrer une action DOWNLOAD dédiée au lieu d'invoquer l'ensemble du navigateur? Puis-je télécharger le fichier moi-même dans mon propre code et ensuite le faire finir au même endroit que si le navigateur l'avait téléchargé?

Merci.

Répondre

2

Vous pouvez le télécharger avec votre propre code, et le placer dans le \Download folder sur la carte SD. Alternativement, vous pouvez utiliser le DownloadManager disponible sur API 9 et au-dessus.

+0

Merci. Le dossier de téléchargement est-il garanti sur tous les appareils? Comment puis-je obtenir ou exprimer le chemin à suivre? –

+0

Ceci est couvert dans la documentation du SDK liée au-dessus (premier lien) –

+0

Le dossier de téléchargement n'existe pas sur tous les appareils, mais vous pouvez le créer. C'est une convention commune d'y placer des fichiers téléchargés. –

Questions connexes