【发布时间】:2015-08-21 21:33:27
【问题描述】:
我有一个扩展程序使用我的后台页面中的这行代码删除在谷歌浏览器中进行的下载:
chrome.browsingData.remove({ "since": 0 }, { "downloads": true });
在正常窗口中下载时它可以工作,但是在隐身 Chrome 窗口中进行下载时,它不会被删除。我的扩展程序在隐身模式下激活,后台页面能够检测隐身页面中的下载何时完成,使用:
chrome.downloads.onChanged.addListener(function(download) {
if (download.state && download.state.current == "complete") {
// The code here is fired even if the download has been completed in incognito mode
}
}
有没有办法从后台页面中删除隐身窗口中的浏览数据?
【问题讨论】:
-
这可能与您是否使用
spanningorsplitincognito mode 进行扩展有关。我想如果您使用spanning模式,在隐身模式下收到的下载会触发该事件,但清除下载的调用会在主 chrome 配置文件中触发 - 毕竟它们是单独的 API。如果您还没有尝试过split模式! -
也可以尝试使用
chrome.downloads.erase。仅依赖于单个 API 意味着当某些东西被弃用时更改更少! -
@JimO'Brien 您可以在答案中转换您的第一条评论,它是这个问题的完美解决方案和解释!
-
认为它已经完成 - 将不胜感激赞成/接受!
标签: javascript google-chrome google-chrome-extension