तो, एक लंबे समय मैंने सोचा कि मैं जानता था कि नींद मोड में जाने से स्क्रीन को रोकने के लिए के लिए, मैं तो बस इस कोड मेरे गतिविधि में इस्तेमाल किया:गतिविधि में स्क्रीन पर रखें - FLAG_KEEP_SCREEN_ON
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
हालांकि, मुझे एहसास हुआ कि यह केवल तभी काम करता है जब मेरा फोन "डेवलपर मोड" में था, यानी जब यूएसबी डिबगिंग (सेटिंग्स -> डेवलपर विकल्प -> यूएसबी डीबगिंग) सक्षम/चेक किया गया था। फिर उपरोक्त कोड वास्तव में सोने के लिए स्क्रीन/डिवाइस बंद कर देता है।
जब वह डिबगिंग चेक नहीं की जाती है, तो मेरी स्क्रीन सो जाती है जैसे कि कल कोई नहीं है। मैं अपने डिवाइस पर एंड्रॉइड 4.04 चला रहा हूं, और
android:minSdkVersion="12"
android:targetSdkVersion="16"
किसी ने इस मुद्दे के बारे में सुना है?
संपादित
मैं, Commonswares सुझाव के साथ परीक्षण किया है, और कोड को setKeepScreenOn() को शामिल किया है, तो यह इस तरह दिखता है:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
View root = findViewById(android.R.id.content);
if (root != null)
root.setKeepScreenOn(true);
मैं भी जाँच की है ताकि इस कोड है वास्तव में निष्पादित, और यह है। लेकिन यह एक चीज नहीं बदलता है ...
बीमार यह कोशिश करते हैं, लेकिन ऐसा लगता है कि FLAG_KEEP_SCREEN_ON भले ही एप्लिकेशन ग्रहण के माध्यम से "तैनात" है काम हो सकता है, लेकिन * नहीं * अगर मैं गूगल से ठीक उसी कोड खेलते हैं डाउनलोड करें। और फिर भी, नेट पर "हर कोई बाहर" कहता है कि FLAG_KEEP_SCREEN_ON काम करता है ... मैं इस मुद्दे के साथ एकमात्र नहीं हो सकता? – Ted
चूंकि मैंने कभी भी 'FLAG_KEEP_SCREEN_ON' का उपयोग नहीं किया है, और केवल कभी भी' setKeepScreenOn() '(जैसा कि यह आसान है) का उपयोग किया है, मैं आपके 'FLAG_KEEP_SCREEN_ON' कोड की प्रभावकारिता के बारे में टिप्पणी नहीं कर सकता। – CommonsWare
ठीक है, यह सेटकिपस्क्रीनऑन() के साथ भी काम नहीं करता है। – Ted