दस्तावेज़ीकरण त्रुटि: मेनिफेस्ट पंजीकृत ब्रॉडकास्ट रिसीवर एंड्रॉइड 8.0 में ACTION_SHUTDOWN इंटेंट प्राप्त करते हैं

click fraud protection

मैनिफ़ेस्ट पंजीकृत प्रसारण इरादे Android Oreo में केवल कुछ तक ही सीमित हैं, और ACTION_SHUTDOWN उनमें से एक नहीं है, या है?

एंड्रॉइड कई चीजों के लिए प्रसारण इरादों का उपयोग करता है। ऐप डेवलपर कुछ कार्यों को करने के लिए उन्हें सुन सकते हैं, जैसे कि जब MEDIA_MOUNTED प्रसारण अनुप्रयोगों के लिए यह जानने का इरादा रखता है कि एसडी कार्ड को स्टोरेज के रूप में कब माउंट किया गया है। एक ऐप डेवलपर के रूप में, आप इसके लिए ब्रॉडकास्ट रिसीवर्स को प्रोग्राम कर सकते हैं, फिर जब भी मीडिया माउंट किया जाता है तो एक फ़ंक्शन को कॉल कर सकते हैं, उदाहरण के लिए, ऐप की डिफ़ॉल्ट स्टोरेज डायरेक्टरी को एसडी कार्ड में बदलने के लिए। इस प्रकार की चीज़ के लिए प्रसारण उद्देश्यों का उपयोग किया जाता है। इनका उपयोग अधिकतर कुछ सिस्टम ईवेंट को किसी भी एप्लिकेशन पर प्रसारित करने के लिए किया जाता है, जिसके लिए उस जानकारी की आवश्यकता हो सकती है। ब्रॉडकास्ट रिसीवर्स को या तो एंड्रॉइड मेनिफेस्ट फ़ाइल में पंजीकृत होना चाहिए या अग्रभूमि में प्रोग्रामेटिक रूप से पंजीकृत होना चाहिए।

सभी प्रकार के प्रसारण को लागू करने वाले कई अलग-अलग डेवलपर्स द्वारा मेमोरी थ्रैशिंग की प्रचुरता के कारण बार-बार फायरिंग करने वाले इंटेंट के लिए रिसीवर, Google ने एंड्रॉइड में इनमें से अधिकांश प्रसारण इंटेंट तक पहुंच को प्रतिबंधित करने का निर्णय लिया 8.0 ओरियो. हालाँकि, कंपनी ने माना कि कुछ महत्वपूर्ण प्रसारण इरादे थे जो ठीक हैं अभी भी सुना जाना चाहिए क्योंकि वे इतनी बार नहीं होते हैं और इस प्रकार स्मृति पैदा करने की बहुत कम संभावना होती है समस्याएँ। वे 

अंतर्निहित प्रसारण की एक श्वेतसूची प्रकाशित की इरादा है कि एंड्रॉइड एप्लिकेशन अभी भी एंड्रॉइड मेनिफेस्ट में प्रसारण रिसीवर पंजीकृत करके सुन सकते हैं। यह एक व्यापक सूची है और इसमें एक अपवाद को छोड़कर, एक ऐप डेवलपर के रूप में आपकी आवश्यकता की सभी चीज़ें शामिल हैं।

ऐसा प्रतीत होता है कि Google ने प्रसारण आशय को सूचीबद्ध नहीं किया है जिसका उपयोग कई अनुप्रयोगों द्वारा किया जाता है। यह है ACTION_SHUTDOWN प्रसारण का इरादा. यह आशय तब भेजा जाता है जब डिवाइस बंद हो रहा होता है, जो ऐप डेवलपर्स के लिए बहुत महत्वपूर्ण हो सकता है ताकि वे प्रक्रिया समाप्त होने से पहले ऐप जो कुछ भी कर रहा है उसे तुरंत बंद कर सकें। इसके बावजूद प्रसारण आशय श्वेतसूचीबद्ध आशयों, अनुप्रयोगों की सूची में दिखाई नहीं दे रहा है कर सकना वास्तव में अभी भी इसे मेनिफेस्ट-पंजीकृत प्रसारण रिसीवर के माध्यम से सुनें एक प्रतिबद्धता के अनुसार Android Git पर, Google इसे अपनी सूची में शामिल करना भूल गया।

यह बहुत अच्छी बात है कि इसे वास्तव में श्वेतसूची में डाल दिया गया है, क्योंकि Google एप्लिकेशन से यह पता लगाने की क्षमता हटा रहा है कि डिवाइस कब बंद हो रहा है यह उपयोगकर्ताओं और ऐप डेवलपर्स दोनों के लिए बुरा होगा, क्योंकि कुछ एप्लिकेशन अब डिवाइस बंद होने से पहले काम को तुरंत सहेजने में सक्षम नहीं होंगे। हम पूरी तरह से निश्चित नहीं हैं कि यह प्रसारण उद्देश्य डेवलपर्स के लिए Google के पेज पर सूचीबद्ध क्यों नहीं है, लेकिन हमने अनुभवी एंड्रॉइड डेवलपर से बात की कॉमन्सवेयर और वह इस बात से सहमत हैं कि यह संभवतः Google की ओर से एक साधारण दस्तावेज़ीकरण त्रुटि है। उनके मुताबिक ऐसा पहली बार नहीं हुआ होगा।