Android Open Source - Simple-Dilbert Download Manager Broadcast Receiver

From Project

Back to project page Simple-Dilbert.


The source code is released under:

Apache License

If you think the Android project Simple-Dilbert listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.mareksebera.simpledilbert.utilities;
// ww w  . j  a  v a2 s. co m
import android.annotation.TargetApi;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.util.Log;
import android.widget.Toast;

import com.mareksebera.simpledilbert.preferences.DilbertPreferences;


public class DownloadManagerBroadcastReceiver extends BroadcastReceiver {

    public void onReceive(Context context, Intent intent) {
        try {
            DilbertPreferences preferences = new DilbertPreferences(context);
            DownloadManager dm = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
            Uri downloadedFilePath = dm.getUriForDownloadedFile(intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, 0));
            if (downloadedFilePath == null) {
                Log.d("DownloadManagerBroadcastReceiver", "No Uri for downloaded file from DownloadManager");
            File downloadedFile = new File(downloadedFilePath.getPath());
            if (downloadedFilePath.getLastPathSegment() == null) {
            String scheduledTargetPath = preferences.getScheduledTargetPath(downloadedFilePath.getLastPathSegment().substring(0, 10));
            if (scheduledTargetPath != null) {
                if (!downloadedFile.renameTo(new File(scheduledTargetPath))) {
                    Toast.makeText(context, "Couldn't move picture to selected Folder", Toast.LENGTH_SHORT).show();
        } catch (Throwable t) {
            Log.e("DownloadManagerBroadcastReceiver", "Error while moving downloaded file to desired target folder", t);

Java Source Code List