मान लीजिए कि आपके पास दो गतिविधियां ए और बी हैं। आप ए से बी पर नेविगेट करते हैं। गतिविधि ए पृष्ठभूमि में जाता है यानी गतिविधि ए रोका जाता है। गतिविधि बी फोकस यानी अग्रभूमि लेता है। जब आप बैक बटन गतिविधि पर क्लिक करते हैं तो बी वापस स्टैक से पॉप किया जाता है और गतिविधि ए फोकस लेता है यानी गतिविधि ए फिर से शुरू होता है।
जब आप गतिविधि में एक संवाद प्रदर्शित करते हैं तो रुकावट और संवाद में गतिविधि प्रदर्शित होती है, बैक बटन संवाद के क्लिक पर खारिज कर दिया जाता है और गतिविधि फिर से शुरू होती है (अग्रभूमि)।
जब गतिविधि नहीं चल रही है तो यह पृष्ठभूमि में है इसलिए इसे रोक दिया गया है। मैं राघव सूद से सहमत हूं कि ऐप दुर्घटनाग्रस्त होने पर क्या होता है।
आप आम तौर पर करने के लिए onPause() कॉलबैक का उपयोग करना चाहिए:
बंद करो एनिमेशन या अन्य चल रहे कार्यों कि सीपीयू का उपभोग कर सकते हैं। सहेजे गए परिवर्तनों को कम करें, लेकिन केवल तभी जब उपयोगकर्ता छोड़ते हैं तो ऐसे परिवर्तन स्थायी रूप से सहेजे जाने की अपेक्षा करते हैं (जैसे ड्राफ्ट ईमेल)। रिलीज सिस्टम संसाधन, जैसे प्रसारण रिसीवर, सेंसर (जैसे जीपीएस), या किसी भी संसाधन जो आपके जीवन को रोकते समय बैटरी जीवन को प्रभावित कर सकता है और उपयोगकर्ता को उनकी आवश्यकता नहीं है।
नोट:
एकाधिक कार्य पृष्ठभूमि में एक ही बार में आयोजित किया जा सकता। हालांकि, यदि उपयोगकर्ता एक ही समय में कई पृष्ठभूमि कार्यों को चला रहा है, तो सिस्टम स्मृति को पुनर्प्राप्त करने के लिए पृष्ठभूमि गतिविधियों को नष्ट करना शुरू कर सकता है, जिससे गतिविधि के राज्य खो जाएंगे।
स्मृति कम होने पर क्या होता है और उस स्थिति में मौजूदा चल रहे संचालन के लिए सिस्टम को स्मृति पुनर्प्राप्त करने की आवश्यकता होती है रोके गए गतिविधियां नष्ट हो जाती हैं (प्राथमिकता के आधार पर)? – Raghunandan