单击下载通知启动我的 activity

Launching my activity on clicking on download notification

我有一个请求 DownloadManager 开始下载的应用程序。

我想要做的是在用户单击我的应用程序从 DownloadManager 请求的下载通知时启动我的应用程序。下面是 BroadcastReceiver 中用于 DownloadManager 广播的代码。

if (DownloadManager.ACTION_NOTIFICATION_CLICKED.equals(action))
        {
            long downloadId = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, 0);
            long dlRef = getDlRef();
            if (downloadId != dlRef) {
                Log.d(Constants.TAG, "MY_DL_ID: " + dlRef + " EVENT FOR: " + downloadId);
            } else {
                Log.d(Constants.TAG, "Starting my activity");
                Intent i = new Intent(context, MyActivity.class);
                i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                context.startActivity(i);
            }
        }

我该怎么做?在上面的代码中,我得到的 downloadId 为 0.

谢谢,

维奈

开始下载后,您可以简单地启动您的应用程序:Intent launchint = getPackageManager().getLaunchIntentForPackage("com.package.yourapp"); startActivity(launchint );

您想使用:

intent.getLongArrayExtra(DownloadManager.EXTRA_NOTIFICATION_CLICK_DOWNLOAD_IDS)

其中 returns 一个长数组。