2013-07-18 11 views
5

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 उपयोग कैसे करें:

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

क्या कोई कृपया बता सकता है कि यह चेतावनी क्यों नहीं चल रहा है। मैं कंसोल की जांच करता हूं, कोई त्रुटि प्रदर्शित नहीं हुई थी। धन्यवाद।

उत्तर

3

आपने कोई अलार्म नहीं बनाया है, इसलिए onAlarm ईवेंट निकाल दिया जाएगा।

chrome.alarms.create के साथ अलार्म बनाएं। नोट: आपको इसे chrome.runtime.onInstalled ईवेंट में करना चाहिए।

+1

पृष्ठ पर नमूने भी देखें जो 方 觉 उद्धृत हैं। – sowbug

+1

इवेंट पेजों पर प्रलेखन को उद्धृत करना: 'क्योंकि श्रोताओं स्वयं ईवेंट पेज के संदर्भ में मौजूद हैं, इसलिए ईवेंट पेज लोड होने पर आपको एडलिस्टर का उपयोग करना होगा; केवल रनटाइम पर ऐसा करना। स्वयं द्वारा स्थापित अपर्याप्त है। –

+0

मैं कैसे देख सकता हूं कि मेरे 'ऑन अलार्म' श्रोता में कौन सा अलार्म निकाल दिया गया था? – theonlygusti

13

यहां सबसे सरल कामकाजी उदाहरण है जिसे मैं सोच सकता हूं, चेतावनी यह बहुत परेशान है क्योंकि अलार्म उस पर है जब हर 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"); 
}); 
+0

मैं कैसे देख सकता हूं कि मेरे 'ऑन अलार्म' श्रोता में कौन सा अलार्म निकाल दिया गया था? – theonlygusti

+0

अलार्म की नाम संपत्ति की जांच करें - https://developer.chrome.com/apps/alarms#type-Alarm –

संबंधित मुद्दे