जब आप हाल ही में ऐप सूची से एक Android ऐप स्वाइप करते हैं तो क्या होता है?
जब आप अपने एंड्रॉइड वर्तमान में चल रहे ऐप्स सूची से ऐप को स्वाइप करते हैं, तो एप्लिकेशन और डेटा का वास्तव में क्या होता है? हम जांच के रूप में पढ़ें.
आज का प्रश्न और उत्तर सत्र Android उत्साही के सौजन्य से आता है-स्टैक एक्सचेंज का एक उपखंड, क्यू एंड ए वेब साइटों का एक समुदाय-संचालित समूह है।.
प्रश्न
एंड्रॉइड उत्साही पाठक एल्डारैथिस ऐप-स्वाइप कार्यक्षमता के बारे में उत्सुक है जो आपको होम बटन के माध्यम से चल रहे ऐप की अपनी सूची को खींचने और फिर उन्हें दाईं ओर स्वाइप करने की अनुमति देता है, संभवतः उन्हें बंद करने के लिए:
आइसक्रीम सैंडविच में हाल के ऐप्स की सूची में ऐप को सूची से बाहर स्वाइप करने की क्षमता जोड़ी गई, जिससे उन्हें स्थायी रूप से खारिज कर दिया गया (और जहां तक मुझे पता है कि यह एक वेनिला फ़ंक्शन है, सीएम / कस्टम रोम एक नहीं है)। इस कार्यक्षमता के अंडर-द-हूड कामकाज को कवर करने के लिए दस्तावेज़ और प्लेटफ़ॉर्म हाइलाइट दिखाई नहीं देते हैं, लेकिन मैं यह जानने के लिए उत्सुक हूं कि सिस्टम वास्तव में क्या कर रहा है.
अपनी जिज्ञासा को और बढ़ाते हुए, मैंने एक त्वरित परीक्षण करने का निर्णय लिया: मैंने एक CM9 इंस्टाल पर म्यूजिक शुरू किया, फिर उसमें से बैकअप लिया। मैंने तब हालिया ऐप्स सूची की जाँच की और देखा कि यह वास्तव में था (और उचित स्थिति में, थंबनेल के आधार पर)। मैं फिर अंदर चला गया
सेटिंग्स> अनुप्रयोग
और बल ने संगीत ऐप को रोक दिया, लेकिन यह अभी भी हालिया सूची में सूचीबद्ध था, जिससे मुझे विश्वास हो गया कि यह पृष्ठभूमि में सुस्त प्रक्रियाओं से जुड़ा नहीं है।.अब यह महसूस करते हुए कि संगीत एक खराब विकल्प हो सकता है, मैंने यूएसए टुडे ऐप के साथ भी परीक्षण किया। यह मूल रूप से एक ही व्यवहार प्रदर्शित करता है, और ऐसा लगता है कि बल स्टॉप (जो समझ में आता है) के बाद "relaunch" करने के लिए मजबूर किया गया था, हालांकि हाल ही में एप्लिकेशन सूची में थंबनेल यह प्रतिबिंबित नहीं किया गया था (कैश्ड, मैं अनुमान लगा रहा हूं?).
इसलिए, जब आप हाल ही में सूची से ऐप हटाते हैं, तो वास्तव में ओएस स्तर पर क्या होता है? क्या यह केवल ऐप के डेटा को रैम और कचरा से बाहर निकालता है, इसे इकट्ठा करता है, इसकी सहेजी हुई स्थिति को नष्ट करता है?
जब आप सूची से ऐप को स्वाइप करते हैं तो वास्तव में क्या हो रहा है?
जवाब
Android के उत्साही योगदानकर्ता ऑस्टिन मिल्स कुछ अंतर्दृष्टि प्रदान करता है:
हाल की ऐप्स सूची में से ऐप्स स्वाइप करना वैनिला है, और हां, अच्छी तरह से प्रलेखित नहीं है। यह विभिन्न एंड्रॉइड मंचों पर चर्चा का एक सभ्य राशि का विषय रहा है ... सर्वसम्मति से कुछ टिप्पणियों में यहां सबसे अच्छा वर्णन किया गया है: यह व्यवहार समान है लेकिन बिल्कुल एक ऐप को बंद करने के समान नहीं है - सामान्य रूप से (ऐप्स के लिए) स्पष्ट बैक बटन हैंडलिंग को परिभाषित न करें) यह एक ही बात के रूप में एक आवेदन के भीतर से पर्याप्त बार वापस मारना है जो आप इसे से बाहर निकलते हैं.
लिंक में बारीकियों पर कुछ और विवरण हैं, लेकिन कुल मिलाकर आप इसे आवेदन छोड़ने के बारे में सोच सकते हैं.
संगीत ऐप के लिए विशिष्ट, मेरा मानना है कि यह एक सेवा शुरू करता है, इसलिए जब कार्य स्वयं (संगीत ऐप / UI) बंद हो सकता है, तो सेवा पृष्ठभूमि में चलती रहती है ताकि आपका संगीत केवल इसलिए नहीं रुके क्योंकि कार्य स्मृति प्रबंधन कारणों से साफ हो गया। आपने जो देखा, वह प्रभावित हो सकता है.
फिर, जीवन के सवाल-जवाब के चक्र में भाग लेते हुए, एल्डारैथिस अपने स्वयं के कुछ शोध के साथ उत्तर को पूरा करने के लिए वापस आया:
मुझे जादुई खोज शब्द मिले हैं जो Google कर्मचारियों के कुछ स्पष्टीकरणों का कारण बने। विशेष रूप से, मुझे अलग-अलग स्थानों पर एक जोड़ी मिली, जहां डायने हैकॉर्न बताते हैं कि जब आप हाल की सूची से बाहर निकलते हैं, तो क्या होता है। पहली उसकी एक Google+ पोस्ट पर एक टिप्पणी है:
[W] टोपी विशेष रूप से तब होती है जब आप हाल ही में कार्य को स्वाइप करते हैं, यह है: (१) अनुप्रयोग की किसी भी पृष्ठभूमि या रिक्त प्रक्रियाओं को मारता है (इसका क्या अर्थ है इसके लिए यहां देखें), और (२) किसी भी सेवाओं को बताने के लिए नए एपीआई का उपयोग करता है कार्य के बारे में आवेदन को हटाया जा रहा है, इसलिए यह जो भी उचित लगता है वह कर सकता है.
वह एक ब्लॉग टिप्पणी में भी नोट करती है:
दरअसल, हाल के कार्यों में एक प्रविष्टि को हटाने से प्रक्रिया के लिए मौजूद किसी भी पृष्ठभूमि प्रक्रिया को मार दिया जाएगा। यह सीधे तौर पर सेवाओं को रोकने का कारण नहीं बनेगा, हालांकि यह पता लगाने के लिए कि उन्हें यह रोकने का मतलब है कि वे चाहते हैं कि कार्य को हटाने के लिए एक एपीआई उनके पास है। ऐसा इसलिए है क्योंकि ई-मेल ऐप के हालिया कार्य को हटाने से ई-मेल के लिए जाँच बंद नहीं होगी.
यदि आप वास्तव में एक ऐप को पूरी तरह से रोकना चाहते हैं, तो आप ऐप की जानकारी के लिए हाल के कार्यों पर लंबे समय तक प्रेस कर सकते हैं, और हिट बल को रोक सकते हैं। फोर्स स्टॉप ऐप की पूरी तरह से हत्या है - सभी प्रक्रियाओं को मार दिया जाता है, सभी सेवाओं को रोक दिया जाता है, सभी सूचनाएं हटा दी जाती हैं, सभी अलार्म हटा दिए जाते हैं, ऐप को फिर से स्पष्ट रूप से अनुरोध किए जाने तक फिर से लॉन्च करने की अनुमति नहीं है।.
तो, ऐसा लगता है कि सारांश यह है कि सूची से किसी ऐप को स्वाइप करने से ऐप के लिए पहले सभी पृष्ठभूमि प्रक्रियाओं को मार दिया जाएगा, फिर उपयोग करें
onTaskRemoved
एप्लिकेशन को सूचित करने के लिए कि पृष्ठभूमि कार्य को हटा दिया गया था। उस समय ऐसा लगता है कि यह तय करने के लिए ऐप पर निर्भर है कि क्या होता है, इसलिए मुझे लगता है कि तकनीकी रूप से नहीं है उस बिंदु से परे ऐप का क्या होता है, इसके बारे में एक कठिन-और तेज़ नियम.
स्पष्टीकरण में कुछ जोड़ना है? टिप्पणियों में ध्वनि बंद। अन्य टेक-सेवी स्टैक एक्सचेंज उपयोगकर्ताओं से अधिक उत्तर पढ़ना चाहते हैं? पूरी चर्चा धागा यहाँ देखें.