检测后台脚本卸载

时间:2016-04-13 10:35:11

标签: google-chrome-extension firefox-webextensions

对于我的chrome和firefox扩展,我需要一种方法来确定后台脚本是否已卸载或正在卸载。发生这种情况时会发生事件吗?我在stackoverflow上经历了多个链接,甚至还有一些官方的铬虫链接,但找不到具体的答案。后台脚本不支持beforeunload,关闭窗口不保证浏览器关闭,因为如果扩展具有“后台”权限,后台脚本仍将在后台运行。我现在能做什么?

1 个答案:

答案 0 :(得分:2)

最接近的是chrome.runtime.onSuspend,但无法保证在上下文关闭之前允许多长时间。 请注意,到目前为止,WebExtensions尚不支持此功能。文档明确指出:

  

在卸载之前发送到事件页面。这为扩展提供了一些清理的机会。请注意,由于页面正在卸载,在处理此事件时启动的任何异步操作都无法保证完成

一般情况下,您无法在事件/后台页面卸载上做太多工作,并且应该使您的代码能够突然卸载。这个事件甚至可能不会触发一些停机。