您好我需要在Chrome扩展程序中安装时自动刷新扩展程序。当我启用扩展程序时,应该执行某些操作。目前在启用然后重新加载后只执行操作。但我需要那些在启用扩展时要执行的操作。我也使用警报进行定期检查。因此,每5分钟执行一次检查。 这是我的background.js
var oldChromeVersion = !chrome.runtime;
function getGmailUrl() {
return "http://calpinemate.com/";
}
function isGmailUrl(url) {
return url.indexOf(getGmailUrl()) == 0;
}
if (chrome.runtime && chrome.runtime.onStartup) {
chrome.runtime.onStartup.addListener(function() {
updateIcon();
});
} else {
chrome.windows.onCreated.addListener(function() {
updateIcon();
});
}
function onInit() {
updateIcon();
if (!oldChromeVersion) {
chrome.alarms.create('watchdog', {periodInMinutes:5});
}
}
function onAlarm(alarm) {
console.log('Got alarm', alarm);
if (alarm && alarm.name == 'watchdog') {
onWatchdog();
}
else {
updateIcon();
}
}
function onWatchdog() {
chrome.alarms.get('refresh', function(alarm) {
if (alarm) {
console.log('Refresh alarm exists.');
}
else {
updateIcon();
}
});
}
if (oldChromeVersion) {
updateIcon();
onInit();
}
else {
chrome.runtime.onInstalled.addListener(onInit);
chrome.alarms.onAlarm.addListener(onAlarm);
}
function updateIcon(){
.....//certain functions are performed
}
在上面的代码中,我需要在启用扩展时执行函数updateIcon()。现在根据我的代码,会发生的是,此函数每5分钟执行一次,或者在启用后重新加载扩展。我可以弄清楚发生了什么?为了在启用时执行,我该做些什么呢?