Ich lade ein Bild von meinem Server mit der Download Manager
.Android: DownloadManager - Benachrichtigung Sticking
Es lädt die Datei fein und legt es dort hin, wo ich es will. Aber aus irgendeinem Grund die Benachrichtigung klebt und ich kann nicht scheinen es zu entfernen. Der Code für den Download-Manager ist wie folgt:
mDownloadManager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
registerReceiver(onComplete, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
Uri uri = Uri.parse("URL"));
long enqueue = mDownloadManager.enqueue(new DownloadManager.Request(uri)
.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI)
.setAllowedOverRoaming(false)
.setTitle("Title")
.setDescription("File description")
.setDestinationInExternalPublicDir("Folder", "Filename")
.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE));
BroadcastReceiver onComplete = new BroadcastReceiver() {
public void onReceive(Context ctxt, Intent intent) {
Toast.makeText(getApplicationContext(), "Download Completed", Toast.LENGTH_SHORT).show();
}
};
Wie entferne ich die Benachrichtigung, sobald es heruntergeladen wurde?.
Ich habe versucht, die verschiedenen Benachrichtigungs Sichtbarkeit Modi ohne Glück einzustellen. Kann ich etwas aus dem BroadcastReceiver machen, wenn er fertig ist?
Bitte verwenden Sie DownloadManager.EXTRA_DOWNLOAD_ID anstelle von Hardcoding "extra_download_id" –
Keine andere Lösung? Ich meine, dass es nicht sehr sauber ist, die Benachrichtigung zu löschen, indem die heruntergeladene Datei entfernt wird (und Sie müssen sie zuerst speichern): Dateikopie und Dateilöschung für nur eine Benachrichtigung löschen! – Christian