दिलचस्प पोस्ट
एंड्रॉइड में एक HTTP GET अनुरोध के लिए पैरामीटर कैसे जोड़ें? प्रत्येक समूह के भीतर एक अल्पविराम से अलग स्ट्रिंग को कॉलम संकलित / एकत्रित करें / समस्त करें कैसे एक MVC आवेदन में डेटा कैश करने के लिए उपयोग डेटाबेस में डाटा डालने के मापदंडों का उपयोग कर जावा में बराबर और हैशकोड विधियों को ओवरराइड करने की आवश्यकता क्यों है? मैं आरक्षित शब्दों से किस प्रकार से बचता हूं जो स्तंभ नामों के रूप में इस्तेमाल होता है? MySQL / तालिका बनाएं लक्ष्य प्लेटफार्मों को सूचीबद्ध करने में असमर्थ कृपया सुनिश्चित करें कि एंड्रॉइड एसडीके पथ सही है जावा का बूलियन आदिम आकार क्यों परिभाषित नहीं है? डिफ़ॉल्ट सॉर्ट क्रम से निपटने के लिए एसक्यूएल सर्वोत्तम अभ्यास कैसे वर्डप्रेस के साथ URL में अतिरिक्त चर को पारित करने के लिए PHP पृष्ठ से GMail SMTP सर्वर का उपयोग करके ईमेल भेजें MVC4 स्टाइलबंडल चित्रों को हल नहीं कर रहा है regex.test वीएस string.match पता करने के लिए कि एक स्ट्रिंग एक नियमित अभिव्यक्ति से मेल खाता है JQuery .each () पीछे की ओर सीएसएस होवर इवेंट पर, क्या मैं दूसरे डिवा स्टाइल को बदल सकता हूँ?

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

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

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

मेरा आवेदन 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);