Chrome扩展程序:计划通知不会重置Chrome存储上的数据

时间:2018-11-13 13:42:19

标签: javascript google-chrome google-chrome-extension google-chrome-app

我已经开发了一个应用程序,该应用程序应该每天在特定的时间触发警报。此警报将触发丰富的通知,该通知具有回调功能,可在chrome存储中设置数据。

问题是:

  • 如果chrome正在运行,则计划的通知会正确触发并重置chrome存储中的数据。
  • 如果Chrome未运行(例如:PC已关闭),并且我在预定通知后的1或2个小时内启动chrome,则数据将重置。
  • 如果chrome没有运行,并且我在chrome睡眠后6或7小时(例如我睡后打开PC)启动chrome,即使计划的通知触发,数据也不会重置。

创建警报:

chrome.alarms.create("resetDailyValue", {
        when: new Date().setUTCHours(resetTime, 0, 0, 0),
        periodInMinutes: resetTime * 60
    });

时间表通知:

chrome.alarms.onAlarm.addListener(function (alarm) {      
    chrome.storage.sync.get(null, function (keys) {
        dailyValue = keys["dailyValue"];
    });

    if (alarm.name === "resetDailyValue") {
        chrome.notifications.create(resetNotificationOptions,
            function () {
                chrome.storage.sync.set({
                    "dailyValue": dailyDefaultValue
                }, function () {
                    console.log("Daily value reset!");
                });
            });
    }
});

0 个答案:

没有答案