java - 如果使用下载管理器完成下载,如何显示警报
问题描述
我成功地使用下载管理器从服务器下载了一个文件,但是如果下载完成,我想显示一条消息我该怎么做,请帮助我。
DownloadManager.Request request = new DownloadManager.Request(Download_Uri);
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
request.setAllowedOverRoaming(false);
request.setTitle("Franklyn Downloading " + "Sample" + ".mp3");
request.setDescription("Downloading " + "Sample" + ".mp3");
request.setVisibleInDownloadsUi(true);
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "/.Android/" +"/.Obs/"+"/.Android/"+"/.Android/"+"/.Android/"+"/.Android/"+ "/" + "Sample" + ".mp3");
refid = downloadManager.enqueue(request);
Log.e("OUT", "" + refid);
list.add(refid);
解决方案
下载完成时下载管理器发送的广播意图操作“ACTION_DOWNLOAD_COMPLETE”。所以你需要注册这个接收器。
BroadcastReceiver downloadComplete = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
// show alert
}
};
registerReceiver(downloadComplete, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
推荐阅读
- html - 嵌入的 Youtube 视频不适用于 chrome
- python - 熊猫数据框中单个点到多个点之间的欧几里得距离
- excel - 匹配 innerhtml 或 innertext 后,.click 在 Internet Explorer 中不执行任何操作
- flutter - Flutter中的LinearGradient?
- java - 为什么断言不应该通过所有测试用例
- apache-kafka - 当我们在运行时增加分区时,Kafka 如何保证消息的顺序?
- python - Google Foobar Challenge,一个测试用例失败
- c# - unity 不能改变物体的位置
- java - 三元运算符在这段代码中是如何工作的?
- html - 在 div 标签内移动三个 js 画布