2012-04-27 10 views
6

काम नहीं कर रहा है, मैं अब उपयोगकर्ता को यह सेवा देने के लिए अधिसूचना का उपयोग कर रहा हूं कि सेवा अभी भी चल रही है। अब मैं उपयोगकर्ता को याद दिलाने के लिए अधिसूचना का उपयोग करना चाहता हूं। (क्योंकि यह कल्पना है)एंड्रॉइड नोटिफिकेशन

अधिसूचना ठीक काम करता है, लेकिन सूचना लाइट कुछ नहीं करता है।

notification.ledARGB = 0xff00ff00; 
notification.ledOnMS = 100; 
notification.ledOffMS = 100; 
notification.flags |= Notification.FLAG_SHOW_LIGHTS; 

notification.flags |= Notification.FLAG_NO_CLEAR + Notification.FLAG_ONGOING_EVENT; 
mNotificationManager.notify(NOTIFICATION_ID, notification); 

और

notification.defaults |= Notification.DEFAULT_LIGHTS; 

बजाय नहीं करता है: अन्य अनुप्रयोगों सूचना लाइट, (gtalk, फेसबुक)

यह कम या ज्यादा इन झंडे के योग के साथ सूचनाओं के लिए उदाहरण कोड के साथ ठीक से काम या तो काम नहीं करते हैं।

मैं Android 4.0 के साथ एक Galaxy Nexus के डिबगिंग हूँ, लेकिन ऐप की लक्षित 2.3.3

संपादित एंड्रॉयड है: इस अनुमति की एक समस्या हो सकती है? यदि हां, तो कौन सा? मैंने सभी को देखा और अधिसूचना प्रकाश के लिए कोई मिलान अनुमति नहीं मिली।

notification.flags |= Notification.FLAG_NO_CLEAR | Notification.FLAG_ONGOING_EVENT; 

संपादित करें:

+0

अनिवार्य का उपयोग – antlersoft

+0

अच्छा सवाल "क्या आप वाकई अधिसूचना रोशनी के लिए सही अनुमतियां हैं" जाँच, थे क्या मैं उन्हें प्राप्त करता हूँ? – trichner

+0

AndroidManifes.xml में दाखिल –

उत्तर

2

मुझे लगता है कि + ऑपरेटर के साथ एक त्रुटि है, तो आप या की जरूरत है और अगर आप झंडे का उपयोग कर रहे हैं, मुझे लगता सही एक होना चाहिए:

notification.flags |= Notification.FLAG_SHOW_LIGHTS 
+0

यह कोई त्रुटि नहीं है, यह एक सुविधा है! सेट करने के लिए बिट्स हैं, प्लस ठीक काम करता है। चूंकि प्रत्येक ध्वज एक और बिट है, इसलिए आप कभी भी एक वाहक नहीं ले पाएंगे। लेकिन ओआर ठीक काम करेगा। FLAG_SHOW_LIGHTS सेट है, जैसा कि आप ऊपरी कोडब्लॉक में देखते हैं, दस्तावेज़ीकरण के अनुसार यदि आप DEFAULT_LIGHTS ध्वज का उपयोग करते हैं तो इसकी आवश्यकता नहीं है। – trichner

+0

इस उत्तर ने इसे मेरे लिए तय किया .. धन्यवाद नक्स –

2

जेली बीन डिवाइस पर, केवल तभी काम करता है जब अधिसूचना प्राथमिकता अधिकतम या डिफ़ॉल्ट पर सेट हो, कृपया फिर से जांचें। कोड के स्निपेट के बाद जेबी उपकरणों पर मेरे लिए ठीक काम कर रहा है।

notification.setLights(0xFF0000FF,100,3000); 
notification.setPriority(Notification.PRIORITY_DEFAULT); 

यहाँ मैं नीले रंग अधिसूचना जो 3000 एमएस के लिए 100 एमएस के लिए चालू और बंद रहेगा उपयोगकर्ता अपने डिवाइस तब अनलॉक तक के लिए नेतृत्व दिखा रहा हूँ।

और अगर आप NotificationCompat (संगतता) वर्ग का उपयोग कर रहे setDefaults विधि ध्यान न दें और SetLight, SetSound, Setvibration, आदि

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