Android download manager Notification not showing on download complete
<p>I'm implementing a background downloading using a notification with button that suggest user to download a content. on click of the button it will trigger a Download Manager to download the link provided and when download is complete, a new notification should show with the same content but the button text is changed as well as it's function. Now what happen is that on complete download a log is fired but the notification doesn't show. Here's my code inside the <code>IntentService</code></p>

<p><strong>Register and unregister the receiver:</strong></p>

<pre><code>@Override
    public void onStart(Intent intent, int startid) {
        super.onStart(intent, startid);
        //Define the receiver

        downloadReceiver = new BroadcastReceiver() {
            public void onReceive(Context ctxt, Intent intent) {
                String action = intent.getAction();
                if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
                    Log.e("Download", "Download complete!");
                    createNotification("Download complete!", "Click here to view the content.");
                }
            }
        };

        registerReceiver(downloadReceiver,  new IntentFilter(Commons.downloadManager.ACTION_DOWNLOAD_COMPLETE));
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        unregisterReceiver(downloadReceiver);
    }
</code></pre>

<p><strong>The method for showing the notification:</strong></p>

<pre><code>@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
    public void createNotification(String title, String message) {
        mNotificationManager = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
        NotificationCompat.BigPictureStyle notiStyle = new NotificationCompat.BigPictureStyle();

        notiStyle.setSummaryText(message);
        notiStyle.bigPicture(remote_picture);

        Intent splash = new Intent(this, MainActivity.class);
        PendingIntent contentIntent = PendingIntent.getActivity(this, 0, splash, PendingIntent.FLAG_UPDATE_CURRENT);

        // build notification
        Uri alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);

        NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(this)
                        .setSmallIcon(R.mipmap.ic_launcher)
                        .setContentTitle(title)
                        .setStyle(new NotificationCompat.BigTextStyle().bigText(message))
                        .setColor(getResources().getColor(android.R.color.black))
                        .setContentText(message)
                        .setSound(alarmSound)
                        .setAutoCancel(true)
                        .setDefaults(NotificationCompat.DEFAULT_LIGHTS)
                        .setStyle(notiStyle);

        mBuilder.setContentIntent(contentIntent);
        mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
        NOTIFICATION_ID+=1;
    }
</code></pre>

<p>The <code>remote_picture</code> is a Bitmap from the first notification which is dismissed after I started downloading the content. Also <code>downloadManager</code> is static from <code>Commons</code> class.</p>

<p>Note that the <code>Log.e("Download", "Download complete!");</code> fires on complete but no notification appears. How can I show the notification on complete download?</p>