ओईएम, फ़ोल्ड किए जा सकने वाले डिवाइसों पर एक विकल्प कॉन्फ़िगर कर सकते हैं. इससे उपयोगकर्ता यह चुन सकते हैं कि डिवाइस को अनलॉक और अनफ़ोल्ड करने के बाद, फ़ोल्ड करने पर बाहरी स्क्रीन कैसे काम करेगी.
यह सेटिंग, सेटिंग > डिसप्ले > फ़ोल्ड करने पर भी, ऐप्लिकेशन का इस्तेमाल जारी रखें में मौजूद होती है. उपयोगकर्ता के पास ये तीन विकल्प होते हैं:
- हमेशा: जब उपयोगकर्ता डिवाइस को फ़ोल्ड करता है, तब फ़्रंट डिसप्ले हमेशा चालू रहता है और अनलॉक रहता है.
- जारी रखने के लिए ऊपर की ओर स्वाइप करें: जब उपयोगकर्ता डिवाइस को फ़ोल्ड करता है, तो डिवाइस पर बिना पुष्टि किए कीगार्ड दिखता है. हालांकि, अगर कोई ऐप्लिकेशन वेकलॉक को होल्ड कर रहा है, तो डिवाइस पर ऐप्लिकेशन चालू रहता है. यह डिफ़ॉल्ट सेटिंग है.
- कभी नहीं: जब उपयोगकर्ता डिवाइस को फ़ोल्ड करता है, तो डिवाइस लॉक हो जाता है और फ़्रंट डिसप्ले बंद हो जाता है.
पहली इमेज. डिवाइस फ़ोल्ड करने पर बाहर की स्क्रीन कैसे काम करे इससे जुड़ी सेटिंग.
डिवाइस फ़ोल्ड करने पर बाहर की स्क्रीन कैसे काम करे इससे जुड़ी सेटिंग कॉन्फ़िगर करना
Settings में फ़ोल्ड लॉक बिहेवियर सेटिंग दिखाने के लिए, अपने डिवाइस की ओवरले config.xml फ़ाइल में config_fold_lock_behavior बूलियन को पॉप्युलेट करें:
<!-- Whether to show Fold lock behavior setting feature in Settings app -->
<bool name="config_fold_lock_behavior">true</bool>
लागू करने से जुड़ी जानकारी
डिवाइस फ़ोल्ड करने पर बाहर की स्क्रीन कैसे काम करे, यह एक सेटिंग और कई बैकएंड क्लास से कंट्रोल होता है.
सेटिंग और यूज़र इंटरफ़ेस (यूआई)
FOLD_LOCK_BEHAVIOR सेटिंग की वैल्यू को स्ट्रिंग के तौर पर सेव किया जाता है. यह वैल्यू, सेटिंग > डिसप्ले > फ़ोल्ड करने पर भी, ऐप्लिकेशन का इस्तेमाल जारी रखें में उपयोगकर्ता के चुने गए विकल्प के हिसाब से होती है:
- हमेशा:
stay_awake_on_fold_key - जारी रखने के लिए ऊपर की ओर स्वाइप करें:
selective_stay_awake_key - कभी नहीं:
sleep_on_fold_key
सेटिंग को display_settings.xml से बढ़ाया गया है. सेटिंग पेज का यूज़र इंटरफ़ेस (यूआई) FoldLockBehaviorSettings फ़्रैगमेंट में लागू किया गया है. साथ ही, प्राथमिकता को FoldLockBehaviorPreferenceController मैनेज करता है.
बैकएंड लॉजिक
डिवाइस को फ़ोल्ड करने पर, LogicalDisplayMapper और PowerManager डिवाइस के व्यवहार को इस तरह कंट्रोल करते हैं:
LogicalDisplayMapper,FoldSettingProviderका इस्तेमाल करकेFOLD_LOCK_BEHAVIORसेटिंग की वैल्यू पढ़ता है.- सेटिंग की वैल्यू के आधार पर:
- अगर वैल्यू
stay_awake_on_fold_keyहै, तो डिवाइस चालू रहता है. - अगर वैल्यू
selective_stay_awake_keyयाsleep_on_fold_keyहै, तोLogicalDisplayMapper,PowerManagerको#goToSleepसिग्नल भेजता है.selective_stay_awake_keyके लिए,#goToSleepसिग्नल में फ़्लैगPowerManager.GO_TO_SLEEP_FLAG_SOFT_SLEEPशामिल है. इससे डिवाइस पर बिना पुष्टि किए ही कीगार्ड दिखता है.sleep_on_fold_keyके लिए,#goToSleepसिग्नल इस फ़्लैग के बिना भेजा जाता है. इस वजह से, डिवाइस लॉक हो जाता है.
- अगर वैल्यू