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