दिलचस्प पोस्ट
मेवेन जेडीके 9 के लिए तैयार है? जावा: मैं कैसे जांच करूं कि कोई दिनांक एक निश्चित सीमा के भीतर है? मैवेन "पथ का निर्माण निष्पादन पर्यावरण J2SE-1.5 निर्दिष्ट करता है", भले ही मैंने इसे बदलकर 1.7 कर दिया फ़ॉर्म भेजने त्रुटि, फ्लास्क अज्ञात त्रुटि: क्रोम शुरू करने में विफल रहा है: असामान्य रूप से बाहर निकल गया (चालक सूचना: क्रोम्रेडियर = 2. 9 वेक्टर छवियां Xcode (यानी पीडीएफ फाइलों) में कैसे काम करती हैं? बड़ी संख्या में पीडीएफ फाइलों की तुलना करने के लिए टूल? DOCTYPE क्या है? भौतिक डिस्क की सूची कैसे करें? सर्वर साइड ऑप्टिमाइज़ेशन के लिए $ http द्वारा सर्वर के साथ कोणीय- UI के टाइपआहेड को कैसे टाई? सीएसएस: नहीं () चयनकर्ता को दूर के वंशज के साथ काम करना चाहिए? जावास्क्रिप्ट – ऑनक्लिक इवेंट को स्वचालित रूप से कहा जा रहा है सी # / .net के लिए अच्छी गुणवत्ता वाले कोड कवरेज के लिए मैं क्या उपयोग कर सकता हूं? क्या यह यूआरएल में एक से अधिक प्रश्न चिह्नों के लिए मान्य है? आईओएस में स्थिति पट्टी कैसे छिपाएगी?

हालिया ऐप्लिकेशन सूची से एप्लिकेशन को कैसे निकालना है?

मुझे लगता है कि एंड्रॉइड लोगों को ऐसा करने नहीं देंगे, क्योंकि उन्हें लगता है कि उनके पास कार्य / अनुप्रयोगों के लिए सही संभाल है। हालांकि, मुझे वास्तव में ऐसा करने की ज़रूरत है मेरे मामले में।

मेरे पास एक एक्टिविटी है जो मेरे आवेदन के प्रवेश बिंदु के रूप में अभिनय करता है। उस गतिविधि में, यह वरीयता पढ़ता है और फैसला करता है कि कौन सी गतिविधि शुरू होती है, उसके बाद बी या सी कहते हैं, यह खुद को खत्म करता है इसलिए, गतिविधि ए कभी उपयोगकर्ताओं के लिए नहीं होती है

मेरा आवेदन sdcard पर चीजों को स्टोर करता है, और इसे लगातार से पढ़ता है इसलिए, जब sdcard अनमाउंट किया गया है, तो मुझे उपयोगकर्ता को एक संदेश प्रदर्शित करने की आवश्यकता है कि sdcard अनुपलब्ध है, ख या सी खोलने के बजाय मैं ए में एक चेक सेट किया है जो उस संदेश को प्रदर्शित करता है जब sdcard अनुपलब्ध है। जब वह संदेश प्रदर्शित होता है, ए बी या सी शुरू करने की कोशिश नहीं करेगा।

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

मैं बस इस समस्या को ठीक करने के लिए बी और सी दोनों को अपना चेक ले जा सकता हूं। लेकिन भविष्य में, गतिविधियों की संख्या ए से बढ़ जाएगी। अगर उनमें से 6 हैं, तो मुझे इस चेक को 6 स्थानों पर कॉपी करने की आवश्यकता होगी। कहने की जरूरत नहीं है, यह बहुत बदसूरत लग रहा है, और रखरखाव दुःस्वप्न है

इसलिए, सबसे अच्छा तय करने के लिए हाल ही में आवेदन सूची से मेरे आवेदन को हटाने चाहिए जब sdcard उतार दिया है। हालांकि, मुझे यह नहीं पता कि यह कैसे करना है। यहां तक ​​कि प्रक्रिया को मारने या ActivityManager.restartPackage का उपयोग करें, यह अभी भी सूची में दिखाई देता है। क्या कोई मुझे बता सकता है कि इसे सूची से कैसे हटाएं?

वेब के समाधान से एकत्रित समाधान "हालिया ऐप्लिकेशन सूची से एप्लिकेशन को कैसे निकालना है?"

प्रयत्न

 <activity android:name=".MainActivity" android:excludeFromRecents="true" ... 

आपके AndroidManifest.xml की गतिविधि घोषणा में

अन्य विशेषताओं आपकी गतिविधि को उसी पैकेज में अन्य गतिविधियों से अलग कर सकते हैं।

 <activity android:name=".aActivity" android:excludeFromRecents="true" android:taskAffinity="" android:launchMode="singleInstance"> 

बस android:excludeFromRecents="true" जोड़ें android:excludeFromRecents="true" में अपनी गतिविधि के टैग में शामिल किए जाने वाले फाइलों को छोड़कर android:excludeFromRecents="true"

आपको AndroidManifest.xml सेट करने की आवश्यकता है:

 <activity> ... android:excludeFromRecents="true" ... </activity> 

या से इस गतिविधि को शुरू करें

 intent.setFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS); 

और एंड्रॉइड मैनिफ़ेस्ट.एक्सएमएल में भी

 <activity> ... android:label="" ... </activity> 

लेबल को खाली के रूप में सेट करना इस गतिविधि को हाल ही की ऐप सूची में दिखाया नहीं जाएगा।

मैं ऐसा करने की अनुशंसा नहीं करूँगा, लेकिन मैं निम्नलिखित विकल्पों की कोशिश करूँगा:

विकल्प 1:

बी और सी पर जोड़ें:

 protected void onPause() { finish(); } 

विकल्प 2:

AndroidManifest में बी और सी में जोड़ें:

 android:noHistory= "true" 

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

भले ही, मुझे नहीं लगता कि यह आपकी समस्या का समाधान करेगा। यदि उपयोगकर्ता गतिविधि बी पर घर चलाता है, तो अपने ऐप को होम पेज से चुनता है, यह सक्रियि बी फिर से शुरू होगा।

असली समस्या को हल करने के कई तरीके हैं एक आसान काम एसडी कार्ड की जांच करने वाली एक आधार गतिविधि बनाने के लिए हो सकता है, और अपनी सभी गतिविधियों से इसकी जानकारी हो सकती है। इस तरह से जांच केवल एक ही स्थान पर है

ठीक है, मैं एक तथ्य के लिए जानता हूं कि यह 2.3.4 में किया जा सकता है। खोले जाने वाला ऐप बच्चा लॉक हाल ही की ऐप सूची को साफ़ करता है, ताकि जब आप लंबे कुंजीपटल प्रेस करें, तो आप अपने फोन को लॉक करते हैं। दुर्भाग्य से मुझे यह नहीं मिला है कि यह कैसे करना है। तो जो कोई भी पोस्टफ देख रहा है और पढ़ रहा है, यह कहना संभव नहीं है कि हार न दें। मुझे यकीन है कि हेक नहीं है

अगर आप इस कोड का उपयोग करें क्लिक बटन पर क्लिक करना चाहते हैं:

 Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); startActivity(intent); 

पूरा ऐप को मारने के लिए और इसे रनिंगपॉप्स की सूची से निकालने के लिए ऐप को अपनी पीआईड (इसकी गंदे) से मार डालो … इसके बाद के संस्करणों से पहले इस लाइन का इस्तेमाल करें।

 int pid = android.os.Process.myPid(); android.os.Process.killProcess(pid);