persona github
La chrome.alarms
API de la extensión de Chrome le permite activar eventos después de un tiempo específico o en intervalos específicos. Esta API es ideal para ejecutar tareas programadas en segundo plano, especialmente cuando el Service Worker puede estar suspendido o detenido.
Crear alarma
Puede chrome.alarms.create
crear una nueva alarma utilizando el método. Este método acepta dos parámetros: el nombre de la Alarma (opcional) y un objeto que define el comportamiento de la Alarma.
-
Alarma única : utilice
delayInMinutes
parámetros para configurar una alarma única.chrome.alarms.create('oneTimeAlarm', { delayInMinutes: 1 });
-
Repetir alarma : utilice
periodInMinutes
parámetros para configurar la repetición de alarma.chrome.alarms.create('repeatingAlarm', { periodInMinutes: 1 });
Monitorear alarma
Utilice chrome.alarms.onAlarm
detectores de eventos para controlar el comportamiento cuando se activa la alarma.
chrome.alarms.onAlarm.addListener(function(alarm) {
if (alarm.name === 'oneTimeAlarm') {
// 执行一次性 Alarm 的逻辑
} else if (alarm.name === 'repeatingAlarm') {
// 执行重复 Alarm 的逻辑
}
});
Obtener y borrar alarma
-
Obtener todas las alarmas :
chrome.alarms.getAll
método de uso.chrome.alarms.getAll(function(alarms) { console.log(alarms); });
-
Borrar alarma :
chrome.alarms.clear
método de uso.chrome.alarms.clear('oneTimeAlarm');
Ejemplo
A continuación se muestra un ejemplo sencillo que demuestra cómo utilizar la API de alarma para crear una alarma única.
// 创建一个将在1分钟后触发的一次性 Alarm
chrome.alarms.create('oneTimeAlarm', {
delayInMinutes: 1 });
// 监听 Alarm
chrome.alarms.onAlarm.addListener(function(alarm) {
if (alarm.name === 'oneTimeAlarm') {
// 执行你的代码,例如发送通知
chrome.notifications.create('notificationId', {
type: 'basic',
iconUrl: 'icon.png',
title: 'Alarm Triggered',
message: 'Your one-time alarm was triggered.'
});
}
});
De esta manera, incluso si su trabajador de servicio está suspendido o detenido, la alarma se activará a la hora especificada. Esto hace que Alarm API sea una forma confiable de realizar tareas programadas. ¡Espero que esto te ayude a comprender cómo usar la API de alarma en las extensiones de Chrome! Si tiene más preguntas o necesita más aclaraciones, no dude en preguntar.