alarms.create()
Erstellt einen neuen Alarm für die aktuelle Browsersitzung. Ein Alarm kann einmal oder mehrmals ausgelöst werden. Ein Alarm wird gelöscht, nachdem er das letzte Mal ausgelöst wurde.
Hinweis: Ab Chrome 117 ist die Anzahl der aktiven Alarme auf 500 begrenzt. Wenn diese Grenze erreicht ist, schlägt die Erstellung eines Alarms fehl.
Syntax
browser.alarms.create(
name, // optional string
alarmInfo // optional object
)
Parameter
name
Optional-
string
. Ein Name für den Alarm. Standardmäßig ist der Name ein leerer String.Dies kann verwendet werden, um auf einen bestimmten Alarm in
alarms.get()
undalarms.clear()
zu verweisen. Er wird auch inalarms.onAlarm
alsname
-Eigenschaft desalarms.Alarm
-Objekts verfügbar sein, das der Listener-Funktion übergeben wird.Alarmnamen sind innerhalb des Gültigkeitsbereichs einer einzelnen Erweiterung eindeutig. Wenn ein Alarm mit einem identischen Namen existiert, wird der bestehende Alarm gelöscht und der neu erstellte Alarm ersetzt ihn.
alarmInfo
Optional-
object
. Sie können dieses Objekt verwenden, um anzugeben, wann der Alarm zunächst ausgelöst wird, entweder als absoluter Wert (when
) oder als Verzögerung ab dem Zeitpunkt der Alarmeinstellung (delayInMinutes
). Um den Alarm wiederkehren zu lassen, geben SieperiodInMinutes
an.In Chrome, es sei denn, die Erweiterung wird unverpackt geladen, werden Alarme nicht öfter als alle 30 Sekunden ausgelöst. Wenn eine Erweiterung
delayInMinutes
auf einen Wert < 0,5 festlegt oderwhen
auf einen Wert < 0,5 setzt, wird der Alarm 30 Sekunden nach dem Einstellen ausgelöst. Wenn eine ErweiterungperiodInMinutes
auf einen Wert < 0,5 setzt, wird der Alarm alle 30 Sekunden ausgelöst. Das Festlegen vondelayInMinutes
oderperiodInMinutes
auf < 0,5 führt zu einer Warnung. Alarm-Auslösungen können willkürlich verzögert werden. Vor Chrome 120 war diese Grenze eine Minute.Das
alarmInfo
-Objekt kann die folgenden Eigenschaften enthalten:when
Optional-
double
. Die Zeit, zu der der Alarm erstmals ausgelöst wird, angegeben als Millisekunden seit der Epoche. Um die Anzahl der Millisekunden zwischen der Epoche und der aktuellen Zeit zu erhalten, verwenden SieDate.now()
. Wenn Siewhen
angeben, geben SiedelayInMinutes
nicht an. delayInMinutes
Optional-
double
. Die Zeit, zu der der Alarm erstmals ausgelöst wird, angegeben als Minuten ab dem Zeitpunkt der Alarmeinstellung. Wenn SiedelayInMinutes
angeben, geben Siewhen
nicht an. periodInMinutes
Optional-
double
. Wenn dies angegeben ist, wird der Alarm nach der ersten Auslösung alleperiodInMinutes
erneut ausgelöst. Wenn Sie diesen Wert angeben, können Sie sowohlwhen
als auchdelayInMinutes
weglassen, und der Alarm wird dann zunächst nachperiodInMinutes
ausgelöst. WennperiodInMinutes
nicht angegeben ist, wird der Alarm nur einmal ausgelöst.
Rückgabewert
Ein Promise
, das ohne Argumente erfüllt wird.
Beispiele
Einen einmaligen, delay-basierten Alarm mit "" als Name erstellen:
function onAdded() {
console.log("Alarm Added!");
}
let delayInMinutes = 5;
let addingAlarm = browser.alarms.create({
delayInMinutes,
});
addingAlarm.then(onAdded);
Einen periodischen, delay-basierten Alarm mit dem Namen "my-periodic-alarm" erstellen:
const delayInMinutes = 5;
const periodInMinutes = 2;
browser.alarms.create("my-periodic-alarm", {
delayInMinutes,
periodInMinutes,
});
Einen periodischen, absoluten Alarm mit dem Namen "my-periodic-alarm" erstellen:
const when = 1545696000;
const periodInMinutes = 2;
browser.alarms.create("my-periodic-alarm", {
when,
periodInMinutes,
});
Browser-Kompatibilität
Loading…
Hinweis:
Diese API basiert auf der Chromium-API chrome.alarms
.