कोशिश करें FLAG_SECURE
:
public class FlagSecureTestActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_SECURE,
WindowManager.LayoutParams.FLAG_SECURE);
setContentView(R.layout.main);
}
}
यह निश्चित रूप से आईसीएस हाल के कार्यों के इतिहास से मैनुअल स्क्रीनशॉट और स्वचालित स्क्रीनशॉट के खिलाफ सुरक्षित है। यह स्क्रीन रिकॉर्डिंग (जैसे, मीडिया प्रोजेक्शन एपीआई का उपयोग करने वाले ऐप्स) के खिलाफ भी सुरक्षित है।
अद्यतन : यह एंड्रॉइड 6.0 पर अब ऑन टैप या अन्य सहायकों के खिलाफ भी सुरक्षित करता है; यदि उपयोगकर्ता सहायक को लाता है तो उन्हें आपके UI में विजेट्स और कंटेनरों के विवरण तक पहुंच नहीं मिलेगी।
अद्यतन # 2 : हालांकि, गतिविधि में सब कुछ संरक्षित नहीं होगा। कोई पॉप-अप विंडो - Dialog
, Spinner
, AutoCompleteTextView
, कार्रवाई बार अतिप्रवाह, आदि - असुरक्षित हो जाएगा। आप उस पर Dialog
कॉल करके getWindow()
और सेटिंग करके समस्या को ठीक कर सकते हैं FLAG_SECURE
। बाकी ... मुश्किल हो जाता है। अधिक के लिए इस ब्लॉग पोस्ट को देखें ।