बड़ी स्क्रीन पर ऐप्लिकेशन के काम करने से जुड़ी सेटअप गाइड

इस पेज पर, Android की बड़ी स्क्रीन वाले डिवाइसों पर ऐप्लिकेशन इस्तेमाल करने की सुविधा के साथ काम करने वाले कॉन्फ़िगरेशन ओवरले के लिए, सेटअप गाइड और इंडेक्स दिया गया है.

डिसप्ले

इस सेक्शन में, कॉन्फ़िगरेशन की उन सभी सेटिंग के बारे में बताया गया है जिनका असर डिसप्ले लेवल के कॉन्फ़िगरेशन पर पड़ता है.

नाम जगह प्रकार डिफ़ॉल्ट
ignoreOrientationRequest display_settings.xml कॉन्फ़िगरेशन false
true बड़ी स्क्रीन (>= 600dp) के लिए
ब्यौरा
इस सुविधा की मदद से, तय किए गए डिसप्ले पर फ़िक्स्ड ओरिएंटेशन वाली गतिविधियों को उपयोगकर्ता के हिसाब से रोटेट किया जा सकता है.
उदाहरण:
          <display-settings>
              <config identifier="0" />
              <display
                  name="<display's uniqueId>"
                  ignoreOrientationRequest="true"/>
          </display-settings>
        

इस्तेमाल का उदाहरण या संदर्भ
डिस्प्ले, सभी ऐप्लिकेशन के लिए अनुरोध किए गए स्क्रीन की दिशा को अनदेखा करता है. साथ ही, ऐप्लिकेशन लेटरबॉक्स किया गया होता है.
इसका इस्तेमाल, बड़ी स्क्रीन वाले सभी डिवाइसों और Android Automotive OS पर किया जाता है. Android 16 और इसके बाद के वर्शन वाले सभी बड़ी स्क्रीन वाले डिवाइसों के लिए, यह डिफ़ॉल्ट रूप से सेट होता है.smallestScreenWidthDp >= 600dp
config_letterboxIsDisplayRotationImmersiveAppCompatPolicyEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
यह इमर्सिव ऐप्लिकेशन के लिए, रोटेशन की सुविधा के साथ काम करने की नीति को चालू करता है. इससे फ़ुलस्क्रीन मोड में, स्क्रीन के ओरिएंटेशन के अपने-आप रोटेट होने की समस्या को रोका जा सकता है. ऐसा करना इसलिए ज़रूरी है, क्योंकि गेम जैसे इमर्सिव ऐप्लिकेशन, अक्सर सभी ओरिएंटेशन के लिए ऑप्टिमाइज़ नहीं किए जाते. साथ ही, रोटेट करने पर इनका यूज़र एक्सपीरियंस (यूएक्स) खराब हो सकता है. इसके अलावा, कुछ गेम खेलने के लिए सेंसर पर निर्भर होते हैं. इसलिए, स्क्रीन अपने-आप घूमने की सुविधा चालू होने पर, उपयोगकर्ता गलती से स्क्रीन को घुमा सकते हैं.
यह सुविधा सिर्फ़ तब काम करती है, जब ignoreOrientationRequest चालू हो.

इस्तेमाल का उदाहरण या संदर्भ
इमर्सिव ऐप्लिकेशन के लिए रोटेशन लॉक करता है.

आसपेक्ट रेशियो

इस सेक्शन में, कॉन्फ़िगरेशन की उन सभी सेटिंग की सूची दी गई है जो आसपेक्ट रेशियो के लिए, गतिविधि-लेवल की विंडो के कॉन्फ़िगरेशन पर असर डालती हैं.

नाम जगह प्रकार डिफ़ॉल्ट
config_fixedOrientationLetterboxAspectRatio frameworks/base/core/res/res/values/config.xml Float 0.0
ब्यौरा
निश्चित स्क्रीन की दिशा के लिए लेटरबॉक्सिंग का आसपेक्ट रेशियो कॉन्फ़िगर करता है. 1.0 से कम या इसके बराबर वैल्यू को अनदेखा किया जाता है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
यह डिवाइस के डिफ़ॉल्ट आसपेक्ट रेशियो को कॉन्फ़िगर करता है. यह रेशियो, लेटरबॉक्स वाले ज़्यादातर ऐप्लिकेशन के लिए काम करता है. आम तौर पर, यह चौकोर आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के ज़्यादा करीब होता है.
config_letterboxIsSplitScreenAspectRatioForUnresizableAppsEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इस सेटिंग से यह कॉन्फ़िगर किया जाता है कि स्प्लिट-स्क्रीन के आसपेक्ट रेशियो (चौड़ाई-ऊंचाई का अनुपात) को, साइज़ बदलने की सुविधा के बिना काम करने वाले ऐप्लिकेशन के लिए डिफ़ॉल्ट आसपेक्ट रेशियो के तौर पर इस्तेमाल करना है या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
साइज़ बदलने की सुविधा के बिना काम करने वाले ज़्यादातर ऐप्लिकेशन, पोर्ट्रेट कैंडीबार फ़ोन लेआउट के साथ काम करते हैं.
config_letterboxIsDisplayAspectRatioForFixedOrientationLetterboxEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
यह कॉन्फ़िगर करता है कि लेटरबॉक्स वाले सभी ऐप्लिकेशन के लिए, डिसप्ले के आसपेक्ट रेशियो का इस्तेमाल डिफ़ॉल्ट आसपेक्ट रेशियो के तौर पर किया जाए या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
फ़्लोट वैल्यू को कॉन्फ़िगर करने के बजाय, डिसप्ले के आसपेक्ट रेशियो का इस्तेमाल प्रोग्राम के हिसाब से करने के लिए कॉन्फ़िगरेशन.

कैमरा

इस सेक्शन में, कॉन्फ़िगरेशन की उन सभी सेटिंग के बारे में बताया गया है जिनका असर, onCameraOpened के कॉल बैक पर ऐप्लिकेशन पर पड़ता है. इन सेटिंग से डिसप्ले, गतिविधि, और कैमरे के कॉन्फ़िगरेशन पर असर पड़ सकता है.

नाम जगह प्रकार डिफ़ॉल्ट
config_isWindowManagerCameraCompatTreatmentEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इस कुकी की मदद से, कैमरे के साथ काम करने से जुड़ी समस्याओं को ठीक किया जाता है. ये समस्याएं, कैमरे के बफ़र और ऐप्लिकेशन की विंडो के ओरिएंटेशन के मेल न खाने की वजह से होती हैं.
इसमें, फ़ुलस्क्रीन में कैमरे से कनेक्ट की गई फ़िक्स्ड ओरिएंटेशन वाली गतिविधियों को फ़ोर्स रोटेशन करना और स्प्लिट स्क्रीन में टूलटिप दिखाना शामिल है.
हर ऐप्लिकेशन के लिए, रोटेशन की सुविधा को बंद किया जा सकता है: OVERRIDE_CAMERA_COMPAT_DISABLE_FORCE_ROTATION.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
इस सुविधा की मदद से, कैमरे की घुमाई गई झलक को ठीक किया जाता है. इसके लिए, डिसप्ले को ज़बरदस्ती घुमाया जाता है, ताकि वह ऐप्लिकेशन के अनुरोध किए गए ओरिएंटेशन से मेल खा सके.
config_isWindowManagerCameraCompatSplitScreenAspectRatioEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
यह कॉन्फ़िगर करता है कि कैमरा कंपैटिबिलिटी ट्रीटमेंट चालू होने पर, कोई गतिविधि स्प्लिट-स्क्रीन के आसपेक्ट रेशियो का इस्तेमाल करती है या नहीं. साथ ही, यह भी कॉन्फ़िगर करता है कि गतिविधि, फ़ुलस्क्रीन में कैमरे से कनेक्ट है या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
इस सेटिंग की मदद से, कैमरा प्रीव्यू को स्ट्रेच होने से रोका जा सकता है. इसके लिए, गतिविधि को कैंडीबार जैसे आसपेक्ट रेशियो में लेटरबॉक्स किया जाता है.
आम तौर पर, इसका इस्तेमाल लैंडस्केप डिवाइसों पर फ़ोर्स रोटेट ट्रीटमेंट चालू होने (config_isWindowManagerCameraCompatTreatmentEnabled और camera.enable_landscape_to_portrait) के साथ किया जाता है. इससे कैमरे के साथ काम न करने की समस्या को ठीक किया जा सकता है. इसके लिए, यह गतिविधि के लिए पोर्ट्रेट कैंडीबार जैसा आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) सिम्युलेट करता है.
camera.enable_landscape_to_portrait सिस्टम प्रॉपर्टी Bool false
ब्यौरा
इससे ट्रीटमेंट को OVERRIDE_CAMERA_LANDSCAPE_TO_PORTRAIT गेट किया जाता है.
इस विकल्प को चुनने पर, लैंडस्केप मोड में फ़ोटो लेने वाले कैमरे में, फ़ोटो को पोर्ट्रेट मोड में लेने का अनुभव मिलता है. इसके लिए, फ़ोटो को 90 डिग्री घुमाया जाता है और उसे काटा जाता है. डिवाइस पर मौजूद सभी लैंडस्केप कैमरों के लिए, कैमरा सेंसर का ओरिएंटेशन पोर्ट्रेट मोड में रिपोर्ट किया गया है. कई ऐप्लिकेशन इस स्थिति को हैंडल नहीं करते हैं और इमेज को स्ट्रेच करके दिखाते हैं.

इस्तेमाल का उदाहरण या संदर्भ
इससे कैमरा HAL को घुमाने और क्रॉप करने की सुविधा चालू होती है. इमेज में बदलाव करने के बारे में ज़्यादा जानकारी के लिए, घुमाएं, काटें, और स्केल करें लेख पढ़ें.
बिल्ड के समय, अपनी mk फ़ाइल में यह कोड जोड़ें: PRODUCT_PROPERTY_OVERRIDES += camera.enable_landscape_to_portrait=true
इसके लिए, डिवाइस में HAL में SCALER_ROTATE_AND_CROP की सुविधा होनी चाहिए. CameraCharacteristics#SCALER_AVAILABLE_ROTATE_AND_CROP_MODES देखें.
SCALER_ROTATE_AND_CROP के लिए, एचएएल के हिसाब से लागू करने के बारे में दिशा-निर्देश पाने के लिए, metadata_definitions.xml देखें.
config_isCameraCompatSimulateRequestedOrientationTreatmentEnabled frameworks/base/core/res/res/values/config.xml Bool true
ब्यौरा
इससे पता चलता है कि कैमरे के साथ काम करने की सुविधा चालू है या नहीं. यह सुविधा, ऐप्लिकेशन के अनुरोध किए गए ओरिएंटेशन को सिम्युलेट करती है. इस ट्रीटमेंट का मकसद, कैमरे के बफ़र और ऐप्लिकेशन विंडो के ओरिएंटेशन के मेल न खाने की वजह से होने वाली समस्याओं को कम करना है. इसमें कैमरा से कनेक्ट की गई, फ़िक्स्ड ओरिएंटेशन वाली गतिविधियों के लिए लेटरबॉक्सिंग, कैमरा बफ़र को काटना (रोटेट और क्रॉप करना), और ऐप्लिकेशन के अनुमानित ओरिएंटेशन से मेल खाने के लिए, डिसप्ले रोटेशन को सैंडबॉक्स करना शामिल है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
कैमरा गतिविधियों के लिए, अनुरोध किए गए ओरिएंटेशन को सिम्युलेट करें. जैसे:
  • फ़्रीफ़ॉर्म विंडो मोड
  • locked या nosensor मोड के अलावा, किसी अन्य मोड में ओरिएंटेशन लॉक करने का अनुरोध

Android 17 और इसके बाद के वर्शन में, यह सेटिंग config_isWindowManagerCameraCompatTreatmentEnabled से फ़ोर्स रोटेट ट्रीटमेंट को बंद कर देती है. साथ ही, डिसप्ले रोटेशन सैंडबॉक्सिंग, लेटरबॉक्सिंग, और फ़िक्स्ड ओरिएंटेशन वाले कैमरा ऐप्लिकेशन के लिए, कैमरा रोटेट-एंड-क्रॉप की नीतियों को एक जैसा कर देती है.
config_isCameraCompatSimReqOrientationLandscapeTreatmentEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे पता चलता है कि लैंडस्केप मोड वाले कैमरों के लिए, कैमरे के साथ काम करने से जुड़ी ऐसी सुविधा चालू है या नहीं जो ऐप्लिकेशन के अनुरोध किए गए ओरिएंटेशन को सिम्युलेट करती है. इस सुविधा का मकसद, पोर्ट्रेट कैमरा सेंसर को हार्डकोड करने वाले ऐप्लिकेशन की वजह से होने वाली समस्याओं को कम करना है. इसमें, कैमरे से कनेक्ट की गई फ़िक्स्ड ओरिएंटेशन वाली गतिविधियों के लिए लेटरबॉक्सिंग, कैमरे के बफ़र को काटना (रोटेट और क्रॉप करना), सेंसर को पोर्ट्रेट मोड में ओरिएंट करना, और डिसप्ले रोटेशन को सैंडबॉक्स करना शामिल है, ताकि यह ऐप्लिकेशन के अनुमानित ओरिएंटेशन से मेल खा सके.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
Android 17 और इसके बाद के वर्शन में, यह ट्रीटमेंट config_isCameraCompatSimulateRequestedOrientationTreatmentEnabled के लिए अनुरोध किए गए ओरिएंटेशन को सिम्युलेट करने वाले ट्रीटमेंट जैसा ही है. हालांकि, यह लैंडस्केप ओरिएंटेशन वाले कैमरों वाले डिवाइसों के लिए है.

बैकग्राउंड और यूज़र इंटरफ़ेस (यूआई)

इस सेक्शन में, यूज़र इंटरफ़ेस (यूआई) को पसंद के मुताबिक बनाने के लिए, लेटरबॉक्स लेयर की सतह पर लागू की गई सभी कॉन्फ़िगरेशन सेटिंग या ऐक्टिविटी लेवल पर लागू की गई सेटिंग की सूची दी गई है.

नाम जगह प्रकार डिफ़ॉल्ट
config_letterboxActivityCornersRadius frameworks/base/core/res/res/values/config.xml Integer 0
ब्यौरा
यह एट्रिब्यूट, लेटरबॉक्स मोड में दिखाई गई गतिविधि के कॉर्नर रेडियस को कॉन्फ़िगर करता है. 0 से कम वैल्यू होने पर, कोनों को गोल किया जाता है. इसके लिए, डिवाइस के निचले कोने के रेडियस में से सबसे कम रेडियस का इस्तेमाल किया जाता है. 0 की डिफ़ॉल्ट वैल्यू, AppCompatLetterboxPolicy में गोल कोनों के लॉजिक को बंद कर देती है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
आम तौर पर, इसे फ़िज़िकल डिवाइस के गोल कोनों से मैच करने के लिए कॉन्फ़िगर किया जाता है.
config_letterboxIsEnabledForTranslucentActivities frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि क्या पारदर्शी गतिविधियों के लिए, लेटरबॉक्सिंग की सुविधा चालू है.

इस्तेमाल का उदाहरण या संदर्भ
इससे पारदर्शी गतिविधियों या मोडल को लेटरबॉक्स किया जा सकता है. साथ ही, लेटरबॉक्स की गई गतिविधि के कॉन्फ़िगरेशन में उन्हें सीमित किया जा सकता है. यह नीति TransparentPolicy में लागू होती है.
config_isCompatFakeFocusEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि स्प्लिट स्क्रीन में फिर से शुरू की गई गतिविधियों के लिए, फ़ोकस की नक़ल करने की सुविधा चालू है या नहीं.
यह ज़रूरी है, क्योंकि कुछ गेम इंजन, ऐप्लिकेशन के कॉन्टेंट को तब तक नहीं दिखाते, जब तक उन्हें फ़ोकस नहीं मिल जाता. मल्टी-विंडो मोड में यह सुविधा डिफ़ॉल्ट रूप से उपलब्ध नहीं होती.

इस्तेमाल का उदाहरण या संदर्भ
यह एक लेगसी फ़्लैग है. इसका इस्तेमाल, Unity गेम इंजन के साथ काम करने वाले ऐप्लिकेशन के लिए किया जाता है. स्प्लिट-स्क्रीन मोड में जाने के बाद, ये ऐप्लिकेशन काले हो जाते हैं. साथ ही, इन्हें सिर्फ़ तब दिखाया जाता है, जब उपयोगकर्ता ऐप्लिकेशन पर टैप करता है और उसे फ़ोकस करता है.
config_letterboxBackgroundType frameworks/base/core/res/res/values/config.xml Integer 0
ब्यौरा
इस विकल्प से, लेटरबॉक्स के बैकग्राउंड के कॉर्नर का रंग कॉन्फ़िगर किया जाता है:
  • 0 - R.color.config_letterboxBackgroundColor में बताए गए रंग का इस्तेमाल करके, सॉलिड बैकग्राउंड बनाया जाता है.
  • 1 - लेटरबॉक्स वाले ऐप्लिकेशन के लिए, R.attr.colorBackground में बताया गया रंग.
  • 2 - लेटरबॉक्स वाले ऐप्लिकेशन के लिए, R.attr.colorBackgroundFloating में बताया गया रंग.
  • 3 - धुंधलेपन या गहरे रंग के स्क्रिम वाला वॉलपेपर. इनमें से कम से कम एक पैरामीटर की वैल्यू 0 से ज़्यादा होनी चाहिए: config_letterboxBackgroundWallpaperBlurRadius या config_letterboxBackgroundWallpaperDarkScrimAlpha. अगर ऐसा नहीं है या अगर ब्लर करने का दायरा दिया गया है, लेकिन डिवाइस पर ब्लर करने की सुविधा काम नहीं करती है और इस विकल्प को चुना गया है, तो डिफ़ॉल्ट रूप से विकल्प 0 लागू हो जाएगा. अगर दी गई वैल्यू इस सीमा से बाहर है, तो विकल्प 0 को चुना जाएगा.


इस्तेमाल का उदाहरण या संदर्भ
परफ़ॉर्मेंस से जुड़ी मौजूदा समस्याओं की वजह से, इस सुविधा को लॉन्च नहीं किया गया है. ओईएम, इस सुविधा को लागू करने का अपना तरीका बना सकते हैं. हालांकि, एओएसपी किसी भी गड़बड़ी को ठीक नहीं करेगा.
config_letterboxBackgroundColor frameworks/base/core/res/res/values/config.xml Color @color/system_neutral1_1000
ब्यौरा
अगर इनमें से कोई एक शर्त पूरी होती है, तो यह विकल्प लेटरबॉक्स के बैकग्राउंड का रंग कॉन्फ़िगर करता है true:
  • R.integer.config_letterboxBackgroundType के लिए, 0 विकल्प चुना गया है.
  • R.integer.config_letterboxBackgroundType के लिए 1 विकल्प चुना गया है और ऐप्लिकेशन के लिए R.attr.colorBackground तय नहीं किया गया है.
  • R.integer.config_letterboxBackgroundType के लिए 2 विकल्प चुना गया है और ऐप्लिकेशन के लिए R.attr.colorBackgroundFloating तय नहीं किया गया है.
  • R.integer.config_letterboxBackgroundType के लिए 3 विकल्प चुना गया है और धुंधला करने का अनुरोध किया गया है, लेकिन यह सुविधा डिवाइस पर काम नहीं करती. इसके अलावा, डार्क स्क्रिम अल्फ़ा और ब्लर रेडियस, दोनों उपलब्ध नहीं हैं.


इस्तेमाल का उदाहरण या संदर्भ
परफ़ॉर्मेंस से जुड़ी मौजूदा समस्याओं की वजह से, इस सुविधा को लॉन्च नहीं किया गया है. ओईएम, इस सुविधा को लागू करने का अपना तरीका बना सकते हैं. हालांकि, एओएसपी किसी भी गड़बड़ी को ठीक नहीं करेगा.
config_letterboxBackgroundWallpaperBlurRadius frameworks/base/core/res/res/values/config.xml Dimen 38dp
ब्यौरा
इस विकल्प से, R.integer.config_letterboxBackgroundType में मौजूद विकल्प 3 के लिए ब्लर रेडियस कॉन्फ़िगर किया जाता है. 0 से कम वैल्यू को अनदेखा किया जाता है और 0 का इस्तेमाल किया जाता है.

इस्तेमाल का उदाहरण या संदर्भ
परफ़ॉर्मेंस से जुड़ी मौजूदा समस्याओं की वजह से, इस सुविधा को लॉन्च नहीं किया गया है. ओईएम, इस सुविधा को लागू करने का अपना तरीका बना सकते हैं. हालांकि, एओएसपी किसी भी गड़बड़ी को ठीक नहीं करेगा.
config_letterboxBackgroundWallpaperDarkScrimAlpha frameworks/base/core/res/res/values/config.xml Float 0.54
ब्यौरा
यह, वॉलपेपर के लेटरबॉक्स बैकग्राउंड पर दिखने वाले काले रंग के पारदर्शी स्क्रिम के ऐल्फ़ा को कॉन्फ़िगर करता है. ऐसा तब होता है, जब R.integer.config_letterboxBackgroundType के लिए विकल्प 3 चुना जाता है. 0 से कम या 1 से ज़्यादा या उसके बराबर वैल्यू को अनदेखा कर दिया जाता है. इसके बजाय, 0.0 (पारदर्शी) का इस्तेमाल किया जाता है .

इस्तेमाल का उदाहरण या संदर्भ
परफ़ॉर्मेंस से जुड़ी मौजूदा समस्याओं की वजह से, इस सुविधा को लॉन्च नहीं किया गया है. ओईएम, इस सुविधा को लागू करने का अपना तरीका बना सकते हैं. हालांकि, एओएसपी किसी भी गड़बड़ी को ठीक नहीं करेगा.
config_enableSelfKillRecoveryBetweenInternalDisplays frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
जब true, डिस्प्ले को इंटरनल डिस्प्ले के बीच ले जाया जाता है, तब सेल्फ़-किल रिकवरी लॉजिक लागू होता है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
Android 17 और इसके बाद के वर्शन में, सेल्फ़-किल रिकवरी की प्रोसेस सिर्फ़ उन डिस्प्ले के लिए चालू होती है जिन्हें बाहरी मॉनिटर के बीच ले जाया जाता है. हालांकि, यह प्रोसेस फ़ोल्ड किए जा सकने वाले उन डिवाइसों पर भी काम करती है जिनकी इनर और आउटर डिसप्ले की डेंसिटी अलग-अलग होती है. इस कॉन्फ़िगरेशन से, उन डिवाइसों के लिए यह प्रोसेस चालू हो जाती है.

आस-पास की जगह दिखाने की सुविधा और पोज़िशनिंग

इस सेक्शन में, ऐक्सेसिबिलिटी के लिए ऐक्टिविटी-लेवल की विंडो कॉन्फ़िगरेशन पर लागू होने वाली सभी कॉन्फ़िगरेशन सेटिंग की सूची दी गई है.

नाम जगह प्रकार डिफ़ॉल्ट
config_letterboxIsHorizontalReachabilityEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
यह कॉन्फ़िगर करता है कि फ़ुल-स्क्रीन विंडोविंग मोड में लेटरबॉक्स किए गए ऐप्लिकेशन के लिए, हॉरिज़ॉन्टल रीचेबिलिटी रीपोज़िशनिंग की सुविधा चालू है या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
पोर्ट्रेट ऐप्लिकेशन को आसानी से ऐक्सेस करने के लिए, उसे बाईं या दाईं ओर ले जाता है.
config_letterboxHorizontalPositionMultiplier frameworks/base/core/res/res/values/config.xml Float 0.5
ब्यौरा
यह लेटरबॉक्स वाली ऐप्लिकेशन विंडो के बीच की हॉरिज़ॉन्टल पोज़िशन को कॉन्फ़िगर करता है.
0 स्क्रीन की बाईं ओर और 1 दाईं ओर मौजूद होता है.
अगर दी गई वैल्यू 0 से कम या 1 से ज़्यादा है, तो इसे अनदेखा कर दिया जाता है. किताब के अलावा किसी अन्य प्रॉडक्ट के लिए, बीच वाली पोज़िशन (0.5) का इस्तेमाल किया जाता है. किताब की पोज़िशन के लिए, बाईं ओर की पोज़िशन (0.0) का इस्तेमाल किया जाता है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
पोर्ट्रेट लेटरबॉक्स वाले ऐप्लिकेशन के लिए, डिफ़ॉल्ट रूप से बीच की पोज़िशन का इस्तेमाल किया जाता है.
config_letterboxIsVerticalReachabilityEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि फ़ुल-स्क्रीन विंडोविंग मोड में लेटरबॉक्स वाले ऐप्लिकेशन के लिए, वर्टिकल रीचेबिलिटी रीपोज़िशनिंग की सुविधा चालू है या नहीं.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
लैंडस्केप ऐप्लिकेशन को आसानी से ऐक्सेस करने के लिए, उसे सबसे ऊपर या सबसे नीचे ले जाता है.
config_letterboxVerticalPositionMultiplier frameworks/base/core/res/res/values/config.xml Float 0.0
ब्यौरा
यह लेटरबॉक्स किए गए ऐप्लिकेशन की विंडो के बीच की वर्टिकल पोज़िशन को कॉन्फ़िगर करता है.
वैल्यू 0 का मतलब है कि स्क्रीन का ऊपरी हिस्सा और 1 का मतलब है कि स्क्रीन का निचला हिस्सा.
अगर दी गई वैल्यू 0 से कम या 1 से ज़्यादा है, तो इसे अनदेखा कर दिया जाता है. टेबलटॉप मोड के अलावा, अन्य मोड के लिए सेंटर की पोज़िशन (0.5) का इस्तेमाल किया जाता है. टेबलटॉप पोज़िशन के लिए, सबसे ऊपर वाली पोज़िशन (0.0) का इस्तेमाल किया जाता है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
लैंडस्केप मोड में लेटरबॉक्स किए गए ऐप्लिकेशन के लिए, बड़ी स्क्रीन वाले डिवाइसों में इसे बीच में कॉन्फ़िगर किया जाता है.
config_letterboxIsAutomaticReachabilityInBookModeEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि फ़ुल-स्क्रीन विंडोविंग मोड में लेटरबॉक्स वाले ऐप्लिकेशन के लिए, बुक पॉस्चर में अपने-आप हॉरिज़ॉन्टल रीचेबिलिटी की सुविधा चालू है या नहीं.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
इस सुविधा की मदद से, पोर्ट्रेट मोड में लेटरबॉक्स वाले ऐप्लिकेशन को बाईं और दाईं ओर ले जाया जा सकता है. ऐसा तब होता है, जब फ़ोल्ड किए जा सकने वाले डिवाइस को बुक पॉस्चर में रखा जाता है.
config_letterboxBookModePositionMultiplier frameworks/base/core/res/res/values/config.xml Float 0.0
ब्यौरा
इस विकल्प का इस्तेमाल, बुक मोड में लेटरबॉक्स वाली ऐप्लिकेशन विंडो की हॉरिज़ॉन्टल पोज़िशन को कॉन्फ़िगर करने के लिए किया जाता है.
0 स्क्रीन की बाईं ओर और 1 दाईं ओर मौजूद होता है. अगर दी गई वैल्यू 0 से कम या 1 से ज़्यादा है, तो इसे अनदेखा कर दिया जाता है. इसके बजाय, बाईं ओर की पोज़िशन (0.0) का इस्तेमाल किया जाता है.

इस्तेमाल का उदाहरण या संदर्भ
यह मल्टीप्लायर, यह तय करता है कि किताब की पोज़िशन में ऐप्लिकेशन को फिर से पोज़िशन में लाने पर, वह कितना मूव करेगा.
config_letterboxDefaultPositionForBookModeReachability frameworks/base/core/res/res/values/config.xml Integer 0
ब्यौरा
इस सेटिंग की मदद से, लेटरबॉक्स किए गए ऐप्लिकेशन की विंडो की डिफ़ॉल्ट हॉरिज़ॉन्टल पोज़िशन कॉन्फ़िगर की जाती है. ऐसा तब होता है, जब पहुंच की सुविधा चालू हो और ऐप्लिकेशन, लैंडस्केप डिवाइस ओरिएंटेशन और बुक मोड में फ़ुलस्क्रीन पर हो. पहुंचने में आसानी वाली सुविधा चालू होने पर, बटन की पोज़िशन को बाईं, बीच में, और दाईं ओर बदला जा सकता है:
  • विकल्प 0 - बाईं ओर
  • विकल्प 1 - बीच में
  • विकल्प 2 - दाईं ओर
अगर दी गई वैल्यू इस रेंज से बाहर है, तो विकल्प 0 (बाएं) को चुना जाता है.

इस्तेमाल का उदाहरण या संदर्भ
यह डिफ़ॉल्ट पोज़िशन है, जहां ऐप्लिकेशन को बुक मोड में रखा जाता है.
config_letterboxTabletopModePositionMultiplier frameworks/base/core/res/res/values/config.xml Float 0.0
ब्यौरा
इस सेटिंग का इस्तेमाल, टेबलटॉप मोड में लेटरबॉक्स वाली ऐप्लिकेशन विंडो के बीच की वर्टिकल पोज़िशन को कॉन्फ़िगर करने के लिए किया जाता है.
वैल्यू 0 का मतलब है कि विज्ञापन स्क्रीन के ऊपरी हिस्से में दिखेगा. वहीं, 1 का मतलब है कि विज्ञापन स्क्रीन के निचले हिस्से में दिखेगा. अगर दी गई वैल्यू 0 से कम या 1 से ज़्यादा है, तो इसे अनदेखा कर दिया जाता है और टॉप पोज़िशन 0.0 का इस्तेमाल किया जाता है.

इस्तेमाल का उदाहरण या संदर्भ
यह मल्टीप्लायर, फ़ोल्ड किए जा सकने वाले डिवाइस में टेबलटॉप मोड में ऐप्लिकेशन की पोज़िशन में होने वाले बदलाव के बारे में बताता है.
config_letterboxDefaultPositionForTabletopModeReachability frameworks/base/core/res/res/values/config.xml Integer 0
जानकारी
इस विकल्प की मदद से, लेटरबॉक्स किए गए ऐप्लिकेशन की विंडो की डिफ़ॉल्ट वर्टिकल पोज़िशन कॉन्फ़िगर की जाती है. ऐसा तब होता है, जब पहुंच की सुविधा चालू हो और ऐप्लिकेशन, डिवाइस के पोर्ट्रेट मोड और टेबलटॉप मोड में फ़ुलस्क्रीन पर हो. रीचेबिलिटी की सुविधा चालू होने पर, विज्ञापन की जगह टॉप, सेंटर, और बॉटम के बीच बदल सकती है. इस कॉन्फ़िगरेशन में, डिफ़ॉल्ट कॉन्फ़िगरेशन के बारे में बताया गया है:
  • विकल्प 0 - सबसे ऊपर
  • विकल्प 1 - बीच में
  • विकल्प 2 - सबसे नीचे
अगर दी गई वैल्यू इस रेंज से बाहर है, तो विकल्प 0 (सबसे ऊपर) को चुना जाएगा.

इस्तेमाल का उदाहरण या संदर्भ
यह डिफ़ॉल्ट पोज़िशन है, जहां ऐप्लिकेशन को टेबलटॉप मोड में रखा जाता है.

सेटिंग

इस सेक्शन में, सेटिंग > ऐप्लिकेशन > आस्पेक्ट रेशियो में जाकर, उपयोगकर्ता के हिसाब से आस्पेक्ट रेशियो की सेटिंग को पसंद के मुताबिक बनाने और चालू करने के लिए, सभी कॉन्फ़िगरेशन सेटिंग दी गई हैं.

नाम जगह प्रकार डिफ़ॉल्ट
config_appCompatUserAppAspectRatioSettingsIsEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
यह कुकी कॉन्फ़िगर करती है कि ऐप्लिकेशन के हिसाब से, उपयोगकर्ता के पहलू के अनुपात को बदलने की सेटिंग चालू है या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
यह सेटिंग > ऐप्लिकेशन > आस्पेक्ट रेशियो में जाकर, आस्पेक्ट रेशियो की सेटिंग सुविधा को चालू करती है.
config_appCompatUserAppAspectRatioFullscreenIsEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि उपयोगकर्ता के लिए, ऐप्लिकेशन के हिसाब से फ़ुलस्क्रीन मोड को चालू करने का विकल्प उपलब्ध है या नहीं. यह विकल्प, आस्पेक्ट रेशियो की सेटिंग में उपलब्ध होता है.

इस्तेमाल का उदाहरण या संदर्भ
इससे उपयोगकर्ता के लिए, आस्पेक्ट रेशियो की सेटिंग
में फ़ुल स्क्रीन विकल्प चालू हो जाता है.
इस सेटिंग से, ऐप्लिकेशन के साइज़ में बदलाव न किए जा सकने, आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात), और स्क्रीन की दिशा से जुड़ी पाबंदियों को अनदेखा किया जाता है.
config_userAspectRatioOverrideEntries packages/apps/Settings/res/values/config.xml string-array सभी विकल्प डिफ़ॉल्ट रूप से चालू होते हैं.
ब्यौरा
यह नीति, ऐप्लिकेशन के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) की सेटिंग वाली स्क्रीन और उपयोगकर्ता के आसपेक्ट रेशियो को बदलने के विकल्पों को कॉन्फ़िगर करती है. इनकी लंबाई और क्रम, config_userAspectRatioOverrideValues के बराबर होना चाहिए.
अगर बदलाव किया गया है, तो UserAspectRatioBackupManager.java में सबसे मिलती-जुलती वैल्यू चुनने के लिए, बैकअप और रीस्टोर करने के लॉजिक को भी अपडेट करें.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
सेटिंग में दिखने वाली स्ट्रिंग के लिए मैपिंग.
config_userAspectRatioOverrideValues packages/apps/Settings/res/values/config.xml integer-array सभी एओएसपी स्ट्रिंग का इस्तेमाल डिफ़ॉल्ट रूप से किया जाता है.
ब्यौरा
यह नीति, ऐप्लिकेशन के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) की सेटिंग वाली स्क्रीन और उपयोगकर्ता के आसपेक्ट रेशियो को बदलने के विकल्पों को कॉन्फ़िगर करती है. इनकी लंबाई और क्रम, config_userAspectRatioOverrideEntries के बराबर होना चाहिए. ये वैल्यू, PackageManager.UserMinAspectRatio से मेल खानी चाहिए.
अगर बदलाव किया गया है, तो UserAspectRatioBackupManager.java में सबसे मिलती-जुलती वैल्यू चुनने के लिए, बैकअप और वापस लाने की सुविधा से जुड़े लॉजिक को भी अपडेट करें.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
बैकएंड PackageManager.UserMinAspectRatio के विकल्पों के लिए मैपिंग:
  • ऐप्लिकेशन की डिफ़ॉल्ट भाषा - 0
  • स्प्लिट स्क्रीन - 1
  • डिसप्ले आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) - 2
  • 4:3 - 3
  • 16:9 - 4
  • 3:2 - 5
  • फ़ुल स्क्रीन - 6
हल्के रंग वाली थीम वाले स्टैटिक ड्रॉअबल packages/apps/Settings/res/drawable/ic_app_aspect_ratio_<option>.xml vector फ़ोल्ड किए जा सकने वाले डिवाइस के लैंडस्केप मोड के साइज़ की ऐसेट
ब्यौरा
इससे उपलब्ध ड्रॉएबल कॉन्फ़िगर किए जाते हैं:


इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
सेटिंग > ऐप्लिकेशन की जानकारी > आस्पेक्ट रेशियो में जाकर, हर विकल्प के नीचे लाइट थीम वाली स्टैटिक इमेज देखें.
गहरे रंग वाली थीम के स्टैटिक ड्रॉएबल packages/apps/Settings/res/drawable-night/ic_app_aspect_ratio_<option>.xml vector फ़ोल्ड किए जा सकने वाले डिवाइस के लैंडस्केप मोड के साइज़ की ऐसेट
ब्यौरा
इससे उपलब्ध ड्रॉएबल कॉन्फ़िगर किए जाते हैं:


इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
सेटिंग > ऐप्लिकेशन की जानकारी > आस्पेक्ट रेशियो में हर विकल्प के नीचे, डार्क थीम वाली स्टैटिक इमेज.
डाइनैमिक ड्रॉएबल
user_aspect_ratio_education.json
packages/apps/Settings/res/raw/user_aspect_ratio_education.json JSON फ़ोल्ड किए जा सकने वाले डिवाइस के लैंडस्केप मोड के हिसाब से डाइनैमिक ऐसेट
ब्यौरा
यह UserAspectRatioAppsPageProvider में Lottie इलस्ट्रेशन को कॉन्फ़िगर करता है.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
ऐप्लिकेशन की सूची में मौजूद ऐनिमेशन: सेटिंग > ऐप्लिकेशन > आस्पेक्ट रेश्यो.

शिक्षा

इस सेक्शन में, ऐप्लिकेशन की कंपैटिबिलिटी से जुड़ी सुविधाओं के बारे में उपयोगकर्ताओं को जानकारी देने के लिए, कॉन्फ़िगरेशन की सभी सेटिंग दी गई हैं.

नाम जगह प्रकार डिफ़ॉल्ट
config_letterboxIsEducationEnabled frameworks/base/core/res/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि लेटरबॉक्स किए गए फ़ुलस्क्रीन ऐप्लिकेशन के लिए, लेटरबॉक्स एजुकेशन की सुविधा चालू है या नहीं.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
फ़ुलस्क्रीन ऐप्लिकेशन के लिए, लेटरबॉक्स एजुकेशन की सुविधा के इस्तेमाल का उदाहरण देखने के लिए, पहली इमेज देखें.
config_letterboxIsRestartDialogEnabled frameworks/base/libs/WindowManager/Shell/res/values/config.xml Bool false
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि एक्सटेंडेड रीस्टार्ट डायलॉग चालू है या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
एक्सटेंडेड रीस्टार्ट डायलॉग के इस्तेमाल का उदाहरण देखने के लिए, दूसरी इमेज देखें.
config_letterboxIsReachabilityEducationEnabled frameworks/base/libs/WindowManager/Shell/res/values/config.xml Bool false
ब्यौरा
यह कुकी कॉन्फ़िगर करती है कि पहुंच से जुड़ी अतिरिक्त जानकारी देने की सुविधा चालू है या नहीं.

इस्तेमाल का उदाहरण या संदर्भ
पहुंच से जुड़ी जानकारी देने की सुविधा के इस्तेमाल का उदाहरण देखने के लिए, तीसरी इमेज देखें.
config_isSizeCompatRestartButtonEnabled frameworks/base/libs/WindowManager/Shell/res/values/config.xml Bool true
ब्यौरा
इससे यह कॉन्फ़िगर किया जाता है कि साइज़ के हिसाब से काम करने वाले ऐप्लिकेशन के लिए, रीस्टार्ट बटन चालू है या नहीं.

इस्तेमाल का उदाहरण या कॉन्टेक्स्ट
रीस्टार्ट बटन का इस्तेमाल, विंडो का साइज़ बदलने के बाद, साइज़ बदलने की सुविधा के बिना काम करने वाले ऐप्लिकेशन के कॉन्फ़िगरेशन को रीस्टार्ट करने के लिए किया जाता है. उदाहरण के लिए, स्प्लिट-स्क्रीन मोड में जाने या डिसप्ले को घुमाने पर.
साइज़ के हिसाब से कंपैटिबिलिटी की जांच करने के बाद रीस्टार्ट करने वाले बटन के इस्तेमाल का उदाहरण देखने के लिए, चौथी इमेज देखें.
config_letterboxRestartButtonHideTolerance frameworks/base/libs/WindowManager/Shell/res/values/config.xml Integer 100
ब्यौरा
यह टास्क के अंदर, गतिविधि की सीमाओं के प्रतिशत की कम से कम टॉलरेंस को कॉन्फ़िगर करता है, ताकि साइज़ के हिसाब से रीस्टार्ट करने वाले बटन को छिपाया जा सके. 0 से कम या 100 से ज़्यादा वैल्यू को अनदेखा किया जाता है.
100 डिफ़ॉल्ट वैल्यू है. इसमें गतिविधि को टास्क के हिसाब से सटीक होना चाहिए, ताकि साइज़ के हिसाब से रीस्टार्ट करने वाले बटन को छिपाया जा सके. 0 वैल्यू का मतलब है कि रीस्टार्ट करने का बटन हमेशा छिपा रहता है.

इस्तेमाल का उदाहरण या संदर्भ
इसका इस्तेमाल, स्क्वेयर जैसे डिवाइसों में किया जाता है. इससे रीस्टार्ट करने के बटन को तब छिपाया जा सकता है, जब उपयोगकर्ता ऐसे ऐप्लिकेशन को रोटेट करता है जिनका साइज़ नहीं बदला जा सकता. हालांकि, ऐप्लिकेशन को रीस्टार्ट करने से यूज़र इंटरफ़ेस (यूआई) में ज़्यादा सुधार नहीं होगा.

इन इमेज में, शिक्षा से जुड़ी जानकारी दिखाने वाले ओवरले के इस्तेमाल के उदाहरण दिए गए हैं:

फ़ुलस्क्रीन ऐप्लिकेशन के लिए लेटरबॉक्स मोड

पहली इमेज. फ़ुलस्क्रीन ऐप्लिकेशन के लिए लेटरबॉक्स मोड

रीस्टार्ट करने के लिए ज़्यादा समय तक दिखने वाले डायलॉग का उदाहरण.

दूसरी इमेज. डायलॉग बॉक्स को बड़ा करें

पहुंचने की क्षमता के बारे में जानकारी देने वाले पेज का उदाहरण.

तीसरी इमेज. रीचेबिलिटी के बारे में शिक्षा.

साइज़ के हिसाब से काम करने की सुविधा को फिर से शुरू करने वाले बटन का उदाहरण.

चौथी इमेज. साइज के हिसाब से काम करने की सुविधा को रीस्टार्ट करने का बटन.