簡體   English   中英

如何在Chrome Chrome擴展程序中使用chrome.alarms

[英]How to use chrome.alarms for Google Chrome extension

的manifest.json

{
    "manifest_version": 2,
    "name": "App name",
    "description": "Description goes here",
    "version": "1.0",    
    "background": {
        "scripts": ["background.js"]
    },
    "permissions": [
        "tabs",
        "alarms"
    ],
    "browser_action": {
        "default_icon": "icon.png",
        "default_popup": "popup.html"
    }
}

我嘗試創建一個函數,使每個分鍾像這樣一個彈出“偉大”:

chrome.alarms.onAlarm.addListener(function(){
        alert('great');
    });

有人可以告訴為什么它不會觸發警報。 我檢查控制台,沒有顯示錯誤。 謝謝。

這是我能想到的最簡單的工作示例,警告它非常煩人,因為當鬧鍾響起時它會每隔12秒發出一次“嗶”聲。 它使用彈出瀏覽器操作來打開和關閉鬧鍾。

的manifest.json

{
  "manifest_version": 2,

  "name": "Alarm test",
  "description": "This extension alarms.",
  "version": "1.0",

  "permissions": [
    "alarms"
  ],

  "background": {
    "scripts": ["eventPage.js"],
    "persistent": false
  },

  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  }
}

popup.html

<!doctype html>
<html>
<head>
<title>Alarms Popup</title>

<script src="popup.js"></script>
</head>
<body>
<a href="" id="alarmOn">ON</a>
<a href="" id="alarmOff">OFF</a>
</ul>
</body>
</html>

popup.js

var alarmClock = {

        onHandler : function(e) {
            chrome.alarms.create("myAlarm", {delayInMinutes: 0.1, periodInMinutes: 0.2} );
                    window.close();
        },

        offHandler : function(e) {
            chrome.alarms.clear("myAlarm");
                    window.close();
        },

        setup: function() {
            var a = document.getElementById('alarmOn');
            a.addEventListener('click',  alarmClock.onHandler );
            var a = document.getElementById('alarmOff');
            a.addEventListener('click',  alarmClock.offHandler );
        }
};

document.addEventListener('DOMContentLoaded', function () {
    alarmClock.setup();
});

而eventPage.js中的重要部分

chrome.alarms.onAlarm.addListener(function(alarm) {
  alert("Beep");
});

您沒有創建任何警報,因此不會onAlarm事件。

使用chrome.alarms.create創建警報。 注意:您應該在chrome.runtime.onInstalled事件中執行此操作

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM