alarms.create()

新しいアラームを生成します。

構文

js
browser.alarms.create(
  name, // 文字列
  alarmInfo, // オブジェクト
);

引数

name省略可

string. アラームの名前を指定します。デフォルト値は空の文字列です。 この値は alarms.get()alarms.clear() で特定のアラームを参照する際に用います。また、alarms.onAlarm のリスナ関数に渡すオブジェクト alarms.Alarm のプロパティ name からも参照されます。 アラームの名前は常に固有です(スコープはアドオンごとに区切られます)。以前そのアドオンが作成したアラーム名に一致する文字列を name に与えた場合、既存のアラームは削除されて発火しなくなります。

alarmInfo省略可

object. アラームが最初に発火する時刻を指定する引数です。時刻の指定には絶対値(when プロパティ)か、アラーム設定時を基準とした時間(delayInMinutes プロパティ)のどちらかで指定します。アラームを周期的に発火させるには periodInMinutes プロパティも指定します。

Chrome の場合、パッケージ化された状態でアドオンが読み込まれると、アラームを 1 分に 1 回以上の頻度で呼び出すことはできません。ここでアドオンが delayInMinuteswhen に 1 未満の値を指定しようとすると、アラームは 1 分後に発火します。アドオンが periodInMinutes に 1 未満の値を指定した場合、アラームは 1 分おきに発火します。

alarmInfo オブジェクトで指定できるプロパティは以下の通りです。

when省略可

double. アラームが最初に発火する時刻を 1970 年 1 月 1 日からの経過ミリ秒 で指定します。現在までの経過ミリ秒は Date.now() で取得できます。when を指定した場合は delayInMinutes を指定しないでください。

delayInMinutes省略可

double. アラームが最初に発火する時刻を、アラーム設定時から何分後かで指定します。 delayInMinutes を指定した場合は when を指定しないでください。

periodInMinutes省略可

double. この値が指定された場合、アラームは最初の発火時刻から periodInMinutes の周期で繰り返し発火します。この値を指定したうえでwhendelayInMinutes の両方を省略した場合、最初にアラームが発火するのは periodInMinutes の時間が経過した後になります。periodInMinutes が指定されなければ、アラームは一度だけ発火します。

ブラウザーの互換性

BCD tables only load in the browser

現在から相対的な時刻で一度限り発火するアラームを "" という名前で作成する例:

js
const delayInMinutes = 5;

chrome.alarms.create({
  delayInMinutes,
});

現在からの相対的な時刻から繰り返すアラームを "my-periodic-alarm" の名前で作成する例:

js
const delayInMinutes = 5;
const periodInMinutes = 2;

chrome.alarms.create("my-periodic-alarm", {
  delayInMinutes,
  periodInMinutes,
});

絶対的な時刻から繰り返すアラームを "my-periodic-alarm" の名前で作成する例:

js
const when = 1545696000;
const periodInMinutes = 2;

chrome.alarms.create("my-periodic-alarm", {
  when,
  periodInMinutes,
});

メモ: この API は Chromium の chrome.alarms API に基づいています。Microsoft Edge での実装状況は Microsoft Corporation から提供されたものであり、ここでは Creative Commons Attribution 3.0 United States License に従っています。