Google chrome extension chrome.management.onInstalled和ExtensionInfo.enabled属性

Google chrome extension chrome.management.onInstalled和ExtensionInfo.enabled属性,google-chrome-extension,Google Chrome Extension,我在一个扩展中有以下代码,它在安装和启用扩展时侦听: chrome.management.onInstalled.addListener(function (e0) { console.log("installed", e0.name, "enabled=" + e0.enabled); }); chrome.management.onEnabled.addListener(function (e2) { console.log("enabled", e2.name, "enab

我在一个扩展中有以下代码,它在安装和启用扩展时侦听:

chrome.management.onInstalled.addListener(function (e0) {
    console.log("installed", e0.name, "enabled=" + e0.enabled);
});
chrome.management.onEnabled.addListener(function (e2) {
    console.log("enabled", e2.name, "enabled=" + e2.enabled);
});
onInstalled事件总是在激发onInstalled事件之后激发onEnabled事件,这很有意义。但onInstalled事件中扩展的enabled属性始终设置为true。我认为这是不对的。在触发OneEnabled事件之前,不应将此属性设置为true。或者我在这里误解了什么

谢谢你提供的任何线索。

请理解这不是一个


为什么要寻找一个附加的来启用扩展应用程序,安装后在哪里和扩展始终是可能的?的默认值是一种很好的方法,请不要依赖于执行流,因为它是一个异步事件。

您好,谢谢您的回答。我说的是传递给onInstalled事件的回调函数的ExtensionInfo对象的enabled属性。@RaphaelC:是的,我理解它:),但是没有
onEnabled()方法
,它是一个其
调用
我们没有控制权的事件。是的,但“ExtensionInfo”上有一个“enabled”属性对象传递给onInstalled回调函数。这就是我说的财产。在触发OneEnabled事件之前,该属性设置为“true”。这似乎是错误的。我的错,我想我理解你说我们无法控制调用的意思。您的意思是,在设置enabled属性后,OneEnabled可以随时被触发。但onInstalled事件发回一个enabled属性设置为true的对象似乎“正常”吗?@RaphaelC:
enabled
在默认安装后设置为
true
(为什么我们希望用户安装禁用的扩展?),但如果需要,用户可以根据具体情况将其显式设置为
false
。More over事件是一个异步事件,请不要依赖于执行流