Ich frage mich, was ist die Absicht, URLs herunterzuladen? Im Browser wird es mit einem kleinen Benachrichtigungssymbol herunterladen. Ich habe mich gefragt, ob ich diese Absicht (und was es ist) verwenden kann.Android Download Absicht
Antwort
Anwendungen können Dateien wie der Browser und Gmail mit dem Download-Manager herunterladen. Dies ist ab Gingerbread verfügbar.
Ihre App benötigt die Berechtigung INTERNET, um einen Download zu initiieren. Um die Datei im Standard-Download-Verzeichnis zu speichern, benötigt sie außerdem die Berechtigung WRITE_EXTERNAL_STORAGE.
Hier ist, wie Sie eine URI zum Download:
DownloadManager.Request r = new DownloadManager.Request(uri);
// This put the download in the same Download dir the browser uses
r.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "fileName");
// When downloading music and videos they will be listed in the player
// (Seems to be available since Honeycomb only)
r.allowScanningByMediaScanner();
// Notify user when download is completed
// (Seems to be available since Honeycomb only)
r.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
// Start download
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(r);
ein paar andere Optionen für die Anpassung der Benachrichtigung Es gibt die Abfrage der Download-Zustand und Einstellung der Download-Adresse.
This blog post zeigt, wie Sie den Download-Manager auf früheren Versionen von Android über versteckte APIs verwenden können.
Warum wird auf Android 4.4 immer "Download nicht erfolgreich" angezeigt? –
Werfen Sie einen Blick here auf alle Android Intents.
Das ist gut, aber es ist niemand, der einen Download startet (vielleicht der Browser, ich werde das versuchen). Danke trotzdem. –
Nein, der Browser funktioniert nicht - danke trotzdem. Ich muss es vielleicht manuell machen. –
@MBober: es funktioniert für mich ... – GregD
Was versuchen Sie zu tun? Wenn Ihre App eine Datei herunterladen möchte, können Sie den UrlConnection-Code verwenden. Wenn Sie ein Paket herunterladen möchten, dann sollte ACTION_PACKAGE_INSTALL
tun, was Sie wollen.
Ich weiß, aber der Browser hat einen Download - Benachrichtigung - Dings und ich dachte, wenn es eine öffentliche Absicht war, könnte ich es stattdessen verwenden. Ich denke, ich muss es manuell machen. Danke, Isaac –
Ich weiß, das ist alt, aber diese akzeptierte Antwort ist nicht die beste Antwort, und ehrlich gesagt nicht wirklich eine Antwort überhaupt für das, was gefragt wird. Stattdessen ist die höher bewertete "richtige" Antwort von Alexandre Jasmin unten. – Josh
Während ich nicht glaube, dass es einen Download Intent im Browser gibt, können Sie wahrscheinlich einen normalen ACTION_VIEW
Intent verwenden und den Browser entscheiden lassen, ob er die URL basierend auf dem Inhaltstyp herunterladen oder anzeigen soll.
So aus dem Code-Trigger
new Intent(Intent.ACTION_VIEW, Uri.parse(url))
und hoffen, dass dies einen Download im Browser auslöst.
Diese Downloads mit dem Browser, aber ohne Fortschrittsbalken oder Benutzerfeedback - ich bekomme nur eine Download-Benachrichtigung abgeschlossen. –
- 1. Absicht: Android
- 2. Android Kamera Absicht
- 3. Android implizite Absicht
- 4. Android - ‚Anwendung installieren‘ Absicht
- 5. Android entsperren Bildschirm Absicht?
- 6. Android NoClassDefFoundError beim Erstellen Absicht
- 7. Android PreferenceFragment Ergebnis aus Absicht
- 8. Android-Limit-Zeiterfassung mit Absicht
- 9. Android REORDER_TO_FRONT Benutzer neu Absicht
- 10. android ausstehende Absicht Benachrichtigung Problem
- 11. Android SMS Absicht Hangouts 2.0
- 12. Android Download Manager abgeschlossen
- 13. android Download-Dateien Problem
- 14. android Download Fortschritt
- 15. Android Download Progress
- 16. Android: Download Objekt
- 17. Android: Download große Datei
- 18. Android berechnen Download-Geschwindigkeitstest
- 19. Android Download Manager
- 20. Absicht in einer anderen Absicht senden
- 21. Android Download-Website HTML-Inhalt
- 22. Android WebView Download funktioniert nicht
- 23. Fehler im Download-Manager Android
- 24. Android-Support-Bibliothek Handbuch Download
- 25. Aktien Absicht für instagram in android
- 26. Google Navigation (Android 1.6) Absicht Rückruf
- 27. Android Individuelle Launcher startActivity() blockiert BOOT_COMPLETED Absicht
- 28. android implizite Absicht bearbeiten fehlgeschlagen Bild laden
- 29. Android-Fehlermeldungen mit Absicht in Adapter
- 30. Wann sendet Android die Absicht ACTION_PACKAGE_NEEDS_VERIFICATION?
Ich habe ehrlich gesagt keine Ahnung, was Sie hier fragen, bitte klären. –
Um diese alte Frage zu überdenken - es ist eine private Absicht. Sehen Sie sich den DownloadManager im AOSP an. –
Haben Sie Links/Anleitungen/Quellen zum Aufruf dieses DownloadManagers? Und, da es privat ist und somit für uns nicht nutzbar ist, haben Sie eine Alternative zum Herunterladen einer Datei gefunden? – TiGer