2011-05-20 11 views
5

मेरे पास एक ऐप है जिसमें रीयल टाइम पुश सूचनाएं सक्षम हैं। तो मेरी क्वेरी तब भी होती है जब भी कोई उपयोगकर्ता को "एडवांस टास्क किलर" का उपयोग करके मेरा ऐप मारता है, मेरा ऐप अपरिभाषित स्थिति में जाता है।क्या होता है जब एंड्रॉइड ऐप "मारे गए"

अपरिभाषित राज्य: मेरा मतलब है कि मेरा ऐप पूरी तरह से समाप्त नहीं होता है। स्क्रीन में एक असंगत स्थिति में डेटा है।

तो ऐसा कोई तरीका है जहां कोई उपयोगकर्ता किसी भी ऐप को मारने पर स्क्रीन को वापस लॉगिन करने के लिए ले जा सकता है। ताकि उपयोगकर्ता किसी भी अनिर्धारित स्थिति को न देख सके।

यह भी जानना है कि मेरे ऐप राज्यों को मारने के बाद क्या होता है ताकि मैं इस मुद्दे को ठीक कर सकूं।

सहायता की सराहना की।

+0

क्या होता है जब एंड्रॉइड ऐप "मारे गए" होता है? यह "मर"। – ariefbayu

+0

क्या आप दूरस्थ प्रक्रियाओं का उपयोग कर रहे हैं? दूसरे शब्दों में, क्या आपके एंड्रॉइडManifest.xml में 'एंड्रॉइड: प्रक्रिया = ": रिमोट" 'विकल्प के साथ चिह्नित कोई' सेवा 'उदाहरण है? – Femi

+0

@femi नहीं मेरे पास एंड्रॉइड नहीं है: मेरे मैनिफेस्ट में प्रक्रिया विशेषता – user755499

उत्तर

4

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

कहने की जरूरत नहीं है, यह अनुप्रयोगों के दुर्व्यवहार का कारण बनता है, इसलिए 2.2 अन्य एप्लिकेशन जैसे एटीके अब आपके ऐप पर ऐसा नहीं कर सकते हैं। वे जिस एपीआई का उपयोग कर रहे थे वह अब वही काम करने में सक्षम है जो मेमोरी किलर से बाहर करता है - एप्लिकेशन प्रक्रियाओं को मारता है, लेकिन केवल तभी जब वे एक हत्यारे राज्य में पृष्ठभूमि में हैं। यह मेमोरी किलर से सामान्य की तुलना में नहीं कर सकता है, इसलिए 2.2 के रूप में यदि आपका एप्लिकेशन एटीके जैसे ऐप के कारण गलत व्यवहार कर रहा है तो यह उस ऐप में एक वास्तविक बग उजागर कर रहा है जिसे उपयोगकर्ता उनके डिवाइस का सामान्य उपयोग।

+0

मेरा ऐप मिनीएसडीके 7 है और एटीके संस्करण v1.9.6 बिल्ड 76 है और हाँ यह ऐप को मार रहा है, क्योंकि जब भी मेरा ऐप एटीके से मार जाता है तो यह सब साफ़ हो जाता है मेरे कैश डेटा जो मेरे ऐप की अपरिभाषित स्थिति का कारण बनता है लेकिन ऐप्स को प्रबंधित करने में "फोर्स स्टॉप" बटन के साथ मेरा ऐप उपयोगकर्ता को वापस लॉगिन स्क्रीन पर ले जाता है जो अपेक्षित व्यवहार है। तो क्या यह एटीके बग है या क्या मुझे अपनी तरफ से संभालना है? – user755499

+0

यह ऐप को मार नहीं रहा है, यह प्रक्रिया को मार रहा है। जब स्मृति की आवश्यकता होती है तो सिस्टम ऐसा करेगा। पृष्ठभूमि में होने पर आपको अपनी प्रक्रिया को मारने की ज़रूरत है। राज्यों के एक सिंहावलोकन के लिए यहां देखें, एक प्रक्रिया में हो सकता है और जब इसे मारा जा सकता है: http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html#Lifecycle – hackbod

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