2013-09-08 8 views
7

मैं अपनी स्क्रीन को प्रोग्रामिक रूप से बंद करने की कोशिश कर रहा हूं।एंड्रॉइड में, मैं प्रोग्राम को प्रोग्रामिक रूप से कैसे बंद कर सकता हूं?

निम्न विधियों में मैं कोशिश की है:

WindowManager.LayoutParams params = getWindow().getAttributes(); 
params.screenBrightness = 0; 
getWindow().setAttributes(params); 

पिछले उल्लेख विधि काम नहीं करता।

हालांकि यह काम करता है:

DevicePolicyManager mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE); 

mDPM.lockNow(); 

यह काम करता है, लेकिन मैं थोड़ी देर के फ़ोन बज रहा हो बंद अपनी स्क्रीन बदल रहा हूँ, और इस बज को रोकने के लिए रिंगर कारण बनता है। जैसे ही आप पावर बटन दबा रहे हैं।

ठीक है, मुझे डिवाइसपॉलिसी मैनेजर विधि का उपयोग किए बिना अपना प्रदर्शन बंद करने में सक्षम होना चाहिए। या इसे सेट करने का एक तरीका है कि DevicePolicyManager विधि मेरे डिवाइस को बजने से नहीं रोक पाएगी।

धन्यवाद सब!

उत्तर

1

स्क्रीन बंद करने के लिए स्क्रीन समय को कम करने के लिए बेहतर है। इस तरह:

Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_OFF_TIMEOUT, 10); 

10 10 एमएस आप अपने खुद के सेट कर सकते हैं इसका मतलब है!

+0

ऐसा नहीं लगता है कि एक जाग ताला सक्रिय है तो यह कभी समय समाप्त नहीं होगा। उपरोक्त वर्णित 'DevicePolicyManager' विधि एक डिस्प्ले बंद करने का सही तरीका है, बस मेरी स्थिति में पूरी तरह से काम नहीं करता है। – Seth

+0

लेकिन यह हर डिवाइस के लिए काम नहीं करता है। मेरे विचार में सबसे अच्छा तरीका है [यहां] (http://rdcworld-android.blogspot.in/2012/03/lock-phone-screen-programmtically.html) – M410

+0

आपके द्वारा पोस्ट किया गया लिंक ठीक वही है जो मैंने अभी कहा है .. मैं समझ नहीं पा रहा हूं कि आप क्या कहने की कोशिश कर रहे हैं? जब तक आपका डिवाइस 2.2 (एपीआई 8) या नया हो, तब तक आप अपनी स्क्रीन बंद करने के लिए 'DevicePolicyManager' और' mDPM.lockNow() 'का उपयोग कर सकते हैं। – Seth

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

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