我使用下载管理器下载文件并进行安装。
我很好奇是否有办法从下载历史记录中删除它而不实际从磁盘中删除文件?
据我所知,没有回调来判断用户是否安装了该文件,因此我想将其保留在磁盘上,但仅将其从下载历史记录中删除。
这是我的下载代码:
//创建下载管理器 final DownloadManager.Request request = new DownloadManager.Request(Uri.parse(appURL));
// Save to here
request.setDestinationUri(this.apkUri);
// Retrieve system download service
final DownloadManager manager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
// Queue request
manager.enqueue(request);
// Will fire off and perform installation when download completes
BroadcastReceiver onComplete = new BroadcastReceiver()
{
@Override
public void onReceive(Context ctxt, Intent intent)
{
performInstall();
ctxt.unregisterReceiver(this);
//finish();
}
};
context.registerReceiver(onComplete, new IntentFilter(DownloadManager.ACTION_DOWNLOAD_COMPLETE));
另外一件我很好奇的事情是在我的广播接收器中是否必须完成?我是从一个帮助器类调用它,所以我出于某种原因无法访问它内部的finish函数。
答案 0 :(得分:0)
排队前:
OnReceive回调:
结果:文件仍在磁盘上并且DM已清除