2012-02-03 10 views
12

एंड्रॉइड (> 3.0) के नए संस्करणों में एक ऑनस्क्रीन बटन है जो हाल के ऐप्स की सूची उनके नाम और स्नैपशॉट्स के साथ प्रदर्शित करेगा। भले ही मेरा ऐप पासवर्ड सुरक्षित है, यह अवलोकन उस स्नैपशॉट में संवेदनशील डेटा दिखा सकता है। तो क्या ओएस को तय करने के बजाए कुछ छवि (लोगो की तरह) को दिखाने के लिए कोई तरीका है?हालिया ऐप्स सूची द्वारा दिखाए गए स्नैपशॉट को कैसे बदला जाए?

+0

इसे प्राप्त करने का कोई अन्य मौका? – Alex

+0

यह भी देखें: http://stackoverflow.com/questions/9822076/how-do-i-prevent-android-taking-a-screenshot-when-my-app-goes-to-the-background – Snicolas

उत्तर

20

अब के लिए असंभव प्रतीत होता है। onCreateThumbnail नामक एक विधि है, लेकिन वर्तमान में सिस्टम द्वारा अनुमानित नहीं है, क्योंकि इसे नहीं कहा जाता है। AndroidManifest.xml

में गतिविधियों के लिए android:excludeFromRecent विशेषता सेट करके getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
2. हाल ही के ऐप्स से अपनी गतिविधियों को निकालने के लिए:

1. अपने विंडो पर FLAG_SECURE जोड़कर संवेदनशील डेटा युक्त गतिविधि पर थंबनेल अक्षम करने के लिए: मैं दो संभव समाधान को देखने के
+0

@Azat: में मेरा ऐप, मेरे पास उपयोगकर्ता वरीयता के आधार पर FLAG_SECURE को सेट/समाशोधन करने की कार्यक्षमता है। यह किटकैट तक ठीक काम करता है और झंडे सेट होने पर टास्क स्विचर में ब्लैक स्क्रीन देखी जा सकती है। (मंजूरी दे दी) लॉलीपॉप में, अवलोकन मेरे ऐप (गतिविधि), समय था जब FLAG_SECURE सेट नहीं था के अंतिम स्नैपशॉट प्रदर्शित करता है। http://stackoverflow.com/q/29564826/1263215 –

2

Azat द्वारा प्रदान किया गया समाधान लॉलीपॉप में भी मान्य है।

बस एक ध्यान दें, यदि आप जारी रखने के लिए पूरे अनुप्रयोग के लिए हाल की सूची में फोटो देख नहीं चाहते हैं, सभी कार्यान्वित गतिविधियों setContentView();

से पहले झंडा getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); onCreate() विधि में निर्दिष्ट करना चाहिए

अन्यथा हालिया सूची में स्नैपशॉट ध्वज के बिना पहली गतिविधि दिखाएगा यदि उपयोगकर्ता ने इसके माध्यम से नेविगेट किया था।

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