2012-09-01 13 views
8

मेरा ब्राउज़र एक्सटेंशन कभी-कभी दुर्घटनाग्रस्त हो रहा है। समस्या यह है कि, मुझे ऐसी चीजों की एक अच्छी, व्यापक सूची नहीं मिल सकती है जो विस्तार को क्रैश करने का कारण बन सकती हैं, और इस प्रकार काम करने के लिए चीजों की एक चेकलिस्ट बनाने में कठिनाई हो रही है।क्रोम ब्राउज़र एक्सटेंशन क्रैश होने का कारण क्या हो सकता है?

मेरी धारणा यह है कि मानक क्रोम टैब को क्रैश होने का कारण होने पर कुछ भी पृष्ठभूमि.html फ़ाइल में चलने पर एक्सटेंशन को क्रैश कर देगा।

मेरे सिर के ऊपर बंद, मैं निम्नलिखित समस्याएं पैदा कर सकता संभालने हूँ ...

  • अनंत लूप या एक स्क्रिप्ट के अन्य उदाहरण बनने अनुत्तरदायी
  • Uncaught अपवाद (जैसे, एक JSON। कोई ट्राई/कैच के साथ)
  • डेटाबेस संग्रहण त्रुटियों
  • अत्यधिक संसाधन उपयोग (??)

यह असली है पार्स मैं बस इतना सोच सकता हूँ। मुझे अपने एक्सटेंशन को डीबग करने का प्रयास करने में एक समय है और वास्तव में चेकलिस्ट बनाने में मदद की सराहना होगी ...

+0

आप अपने एक्सटेंशन में किस अनुमति का अनुरोध कर रहे हैं? –

उत्तर

11

मैं पूछने के 3 महीने बाद इस प्रश्न पर वापस आ रहा हूं क्योंकि मेरा दूसरा विस्तार भी दुर्घटनाग्रस्त था। इस मामले में, हालांकि, एक्सटेंशन बहुत आसान था - पृष्ठभूमि.जेएस स्क्रिप्ट में कोड की केवल 40 पंक्तियां।

2 संचालन संभव लग रहा था दोषियों: localStorage के लिए लिख और का उपयोग कर console.log

मैं पहले देखा है कि यह एक वेबसाइट में बड़ी वस्तुओं के साथ बार-बार console.log का उपयोग करके एक सामान्य क्रोम टैब दुर्घटना के लिए संभव है यदि आप विस्तारित अवधि के लिए पृष्ठ खोलते हैं। क्योंकि background.js हमेशा खुला है, यह यहां एक संभावित अपराधी जैसा प्रतीत होता है।

टीएल; डी उत्पादन में console.log का उपयोग न करें। कभी।

+0

अनपेक्षित होने पर समस्याओं का स्रोत खोजने का हमेशा एक त्वरित तरीका है। कुछ चीजों पर टिप्पणी करें और देखें कि समस्या दूर हो गई है या नहीं। – jwize

+0

लगता है कि अपराधी console.log है –

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