如何使一个下载管理器暂停/恢复和进度通知



"Activity A"发送url和文件名到DownloadManager,开始下载并在通知中显示进度,当进度通知被点击时打开"Activity B"与下载列表,所有下载都在进行中并完成。

Sorry my english

"Activity A"发送url和文件名到DownloadManager,开始下载

DownloadManager应该是Service,因为你希望它在后台工作,而不是与UI变化(如屏幕旋转等)交互。根据需要在这个Service内实现自己的线程。我推荐ThreadPoolExecutor。它将允许您设置线程的数量,因此您将能够切换执行从串行到并行等等。

并在通知

中显示进度

使用startForeground方法调用。请参阅http://developer.android.com/reference/android/app/Service.html

当点击进度通知时,打开"活动B",显示下载列表,其中所有下载都在进行中并已完成。

使用PendingIntent,因为通知在系统进程中运行,而不是在应用程序进程中运行。PendingIntent会给你打开ActivityB的权限。参考:点击通知后打开应用程序

如果你想在你的ActivityB中显示操作的状态,你可以很容易地从bindDownloadManager,并通过回调从进度更新更新活动UI。

相关内容

  • 没有找到相关文章

最新更新