मुझे निम्नलिखित व्यवहार चाहिए: उपयोगकर्ता एक अधिसूचना पर क्लिक करता है और एंड्रॉइड मेरी सेवा बंद कर देता है।क्या उपयोगकर्ता को अधिसूचना पर क्लिक करने के जवाब में सेवा रोकने का एक सीधा तरीका है?
समस्या यह है कि किसी सेवा को रोकने के लिए कॉल रोकने के लिए कॉल की आवश्यकता होती है और मैं आसानी से लंबित इंटेन्टेंट नहीं बना सकता जो ऐसा करता है।
तो मुझे ऐसा करने का एकमात्र तरीका यह है कि मेरी सेवा को एक विशेष इरादा अतिरिक्त प्राप्त किया जाए जो सेवा को रोकने और बंद होने का कारण बनता है।
क्या अधिसूचना से सीधे सेवा रद्द करने का कोई आसान तरीका है?
मैं एक लंबे समय के लिए इस का उपयोग किया है, लेकिन यह अब और काम नहीं करता। एंड्रॉइड एल (5.0) से शुरू होने पर, आपको डेडऑब्जेक्ट एक्सेप्शन मिलेगा यदि उपयोगकर्ता ने आपके ऐप को हमारे रिकेंट सूची में स्वाइप किया है और एंड्रॉइड को मुख्य कार्य को मारने और सेवा को पुनरारंभ करने का कारण बनता है (ऐसा होता है यदि आपके पास कुछ यूआई के साथ स्थानीय सेवा हो स्वाइप आउट) – gnobal
@gnobal: 'DeadObjectException' केवल बाध्यकारी AFAIK के माध्यम से होता है। इस समाधान में बाध्यकारी शामिल नहीं है। – CommonsWare
न तो मेरा करता है। हालांकि, मैं startService का उपयोग करता हूं। लेकिन चूंकि मैं इसे दिखाने के लिए एक छोटा सा उदाहरण प्रदान करने के लिए बहुत आलसी हूं, मुझे विश्वास होगा कि यह सिर्फ मेरा ऐप है जो अच्छी तरह से काम नहीं कर रहा है। किसी भी मामले में, मैंने आपके द्वारा पेश किए गए एक अलग समाधान पर स्विच किया: http://stackoverflow.com/a/11145822/7748 :) – gnobal