Intereting Posts
एंड्रॉइड में कॉल इरादा getView () रिक्त रिटर्न संसाधन स्ट्रिंग से टोस्ट। मेक टेक्स्ट संसाधन नाम प्रोग्राम से प्रवेश करें कैसे ExifInterface बिना तस्वीर की ओरिएंटेशन निर्धारित करने के लिए? एंड्रॉइड ऐप – छवि के रूप में कैनवास पर बिटमैप ड्रॉइंग को कैसे बचाया जा सकता है? कोड चेक करें? एक सूची दृश्य में रीफ़्रेश चेकबॉक्स स्थिति डायनेमिक बिटमैप्स सेटिंग के साथ एंड्रॉइड पर केनबर्न के प्रभाव का कार्यान्वयन गतिविधि से सूची फ्रेग्मेंट तक ArrayList पास करें? मोबाइल पर सामाजिक साझाकरण फ्लोटिंग एक्शन बटन पूरी तरह से एक टुकड़ा के अंदर नहीं दिखा रहा है टेक्स्टविक्यू में स्ट्रिंग में ऑनक्लिक स्थिति पता लगाएँ कि एचटीसी "फास्ट बूट" सक्षम है या नहीं एंड्रॉइड, क्या मैं एकाधिक मूल्यों को पारित करने के लिए putExtra का उपयोग कर सकता हूं? फोनगैप भौगोलिक स्थिति कभी-कभी एंड्रॉइड पर काम नहीं करती

एंड्रॉइड ऐप को छोड़ने का सबसे अच्छा तरीका है?

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

  • यह नहीं किया जाना चाहिए => कोई विकल्प नहीं
  • मेरी गतिविधि में कॉल समाप्त () => केवल 1 गतिविधि के लिए, संपूर्ण ऐप नहीं
  • एक विशेष ध्वज के साथ पहली गतिविधि के लिए एक आशय शुरू करें => मेरे पास एकाधिक प्रविष्टि बिंदु हैं, इसलिए वास्तव में कोई विकल्प नहीं है
  • बस मेरी अपनी प्रक्रिया को मार डालो => इस बारे में निश्चित नहीं है, क्या यह सभी गतिविधियों में ऑनस्ट्राय () पद्धति को फोन करेगा? और क्या मेरी पृष्ठभूमि सेवाएं इस के साथ चलती रहेंगी? (जिसे रोका नहीं जाना चाहिए)

तो मैं सोच रहा हूं, क्या मेरे ऐप को छोड़ने का कोई अन्य विकल्प है या क्या मैं वास्तव में इन विकल्पों तक ही सीमित हूं? अगर वास्तव में कोई अन्य विकल्प नहीं है, तो मैं अपने आवेदन कक्षा में अपनी गतिविधियों के सभी उदाहरणों की एक सूची तैयार करने के लिए सोच रहा था, और फिर उन पर फ़िन () पर कॉल करने के लिए उन्हें लूप कर दें लेकिन मुझे नहीं पता कि यह इस को संभालने का सही तरीका होगा।

इसलिए मैं यहाँ अपने प्रश्न पूछता हूं, जो मेरे ऐप को बंद करने का सबसे अच्छा तरीका है?

संपादित करें: मैं अधिक या कम समस्या तय की। मेरे पास मेरी क्रियाकलापों के WeakReference की सूची है प्रत्येक ऑन क्रेट में मैं गतिविधि को सूची में जोड़ता हूं। तब, जब मैं अपना ऐप बंद करना चाहता हूं, तो मैं सिर्फ सूची और कॉल फ़िन (लूप) को बंद कर देता हूं। समस्या हो रही है: यदि सूची में बहुत बड़ा हो जाता है, तो यह मेरी सारी गतिविधियों को पूरा नहीं करेगा, क्योंकि एंड्रॉइड ने पहले ही उन्हें नष्ट कर दिया था। इसलिए हर बार जब मुझे पता है कि मुझे उनकी ज़रूरत नहीं है, तो मैं उन्हें खत्म कर दूंगा। मेरे मामले में, सूची 3/4 गतिविधियों से बड़ा नहीं बढ़ सकती है, इसलिए गतिविधियों की चिंता नहीं करने के लिए अब और कोई ज़रूरत नहीं है। इस पद्धति के साथ भी, मुझे अपनी प्रक्रिया को नष्ट नहीं करना है

Solutions Collecting From Web of "एंड्रॉइड ऐप को छोड़ने का सबसे अच्छा तरीका है?"

आपको ऐसा नहीं करना चाहिए, लेकिन अगर आप आग्रह करते हैं:

 System.exit(0); 

नीचे कोड का उपयोग करें

 android.os.Process.killProcess(android.os.Process.myPid()); System.runFinalizersOnExit(true); 

फिर से नहीं किया गया लेकिन फिर भी आप इसका उपयोग कर सकते हैं। अगर आप एप को छोड़ने की आवश्यकता होती है तो इस समाधान के साथ बेहतर चलें।

मेरे अनुसार सबसे अच्छा समाधान नीचे की तरह आपके ऐप में हर गतिविधि को खत्म कर रहा है

step1) मुख्य गतिशीलता में स्थिर वैरिएबल का कहना है।

 public static isQuit = false; 

step2) एक बटन क्लिक करें घटना पर यह चर सच करने के लिए

  mainactivity.isQuit = true; 

चरण 3) और अपने आवेदन की हर गतिविधि में नीचे के रूप में ऑनस्ट्रेट विधि है ..

  @Override protected void onRestart() { // TODO Auto-generated method stub super.onRestart(); if(mainactivity.isQuit) finish(); } 

आप सूची में सभी प्रारंभिक गतिविधियों की सूची रख सकते हैं (स्मृति रिसाव से बचने के लिए WeakReference का उपयोग करें)। ऐप से बाहर निकलने के लिए, प्रत्येक आइटम पर पहले फिनिश विधि को खोलें और फिर एंड्रॉइड। प्रो। प्रोसेस। केिल प्रोसेस (android.os.Process.myPid ()) को खोलें;