Split Screen एक विभाजित स्क्रीन मोड है जो एक साथ दो ऐप्स को एक दूसरे के बगल में चलाने की अनुमति देता है, उपलब्ध स्थान को विभाजित करता है। उपयोगकर्ता विंडो के बीच विभाजक को खींच सकता है, अनुपात बदल सकता है और प्रत्येक आधे में ऐप्स को जल्दी से बदल सकता है। Android Developers (2025) के अनुसार, Split Screen 600 dp और उससे अधिक स्क्रीन चौड़ाई वाले सभी डिवाइसों के लिए अनिवार्य संगतता कार्यक्रम का हिस्सा है, और यह Android और iPadOS दोनों पर समर्थित है।
मुख्य बातें
Split Screen एक मल्टीटास्किंग मोड है जिसमें स्क्रीन दो कार्यात्मक क्षेत्रों में विभाजित होती है, प्रत्येक में एक अलग ऐप होता है। Slide Over या PiP के विपरीत, जहाँ एक विंडो दूसरे के ऊपर तैरती है, Split Screen दोनों ऐप्स को समान दर्जा देता है — प्रत्येक को स्क्रीन का अपना आधा हिस्सा मिलता है।
यह मोड Android (7.0 Nougat से), iPadOS (iOS 9 से), Windows (Snap Assist) और कुछ Linux डेस्कटॉप वातावरणों पर उपलब्ध है। मोबाइल डेवलपमेंट में, Split Screen टैबलेट और फोल्डेबल डिवाइसों के लिए अनिवार्य परिदृश्य माना जाता है, जहाँ मल्टीटास्किंग प्लेटफ़ॉर्म का एक प्रमुख लाभ है।
उपयोगकर्ता Overview (Android) में ऐप आइकन पर लॉन्ग-प्रेस करके या Dock (iPad) से खींचकर Split Screen को सक्रिय करता है। सक्रियण के बाद, स्क्रीन विभाजित हो जाती है और उपयोगकर्ता हाल की सूची या Dock से दूसरा ऐप चुनता है।
Android में, Split Screen को Window Manager के माध्यम से प्रबंधित किया जाता है। जब उपयोगकर्ता मोड को सक्रिय करता है, सिस्टम दो StackViews बनाता है — प्रत्येक Activity के लिए एक। विंडो के बीच विभाजक सिस्टम द्वारा रेंडर किया जाता है, न्यूनतम मोटाई 1 dp के साथ, जो Gesture Navigation वाले डिवाइसों पर बढ़ाई जा सकती है।
प्रत्येक ऐप onConfigurationChanged के माध्यम से आकार परिवर्तन की सूचना प्राप्त करता है। यदि Activity इस घटना को संभाल नहीं पाती है, तो वह नष्ट हो जाती है और पुनः बनाई जाती है। वीडियो और गेम के लिए यह महत्वपूर्ण है: Activity को पुनः बनाने से प्लेबैक स्थिति या गेम की स्थिति रीसेट हो जाती है।
विंडो अनुपात को विभाजक खींचकर बदला जा सकता है। Android तीन स्थितियों का समर्थन करता है: 50/50, 70/30 और 30/70। उपयोगकर्ता ऐप्स को आपस में बदल भी सकता है, जो Activity को पुनरारंभ करता है यदि configChanges को संभाल नहीं किया जाता है।
Split View iPadOS में Split Screen का कार्यान्वयन है। Android के विपरीत, जहाँ स्क्रीन विभाजन हमेशा केंद्र से शुरू होता है, iPadOS उपयोगकर्ता को तीन विभाजक स्थितियाँ प्रदान करता है: 50/50, 25/75 और 75/25। यह मोड Dock या App Exposé के माध्यम से सक्रिय होता है।
iPadOS में, Split View में एक ऐप को Slide Over — एक फ्लोटिंग विंडो — में संक्षिप्त किया जा सकता है। यह Apple की एक अनूठी विशेषता है: उपयोगकर्ता डेटा हानि के बिना एक विंडो को Split View से Slide Over और वापस रूपांतरित कर सकता है। डेवलपर को तीनों मोड का समर्थन करना चाहिए: फ़ुल स्क्रीन, Split View और Slide Over।
iOS में Split View का समर्थन करने के लिए, ऐप को Size Classes और सीन (UIScene) के माध्यम से अनुकूली लेआउट लागू करना चाहिए। iOS 13 से, Apple को आवश्यकता है कि ऐप मल्टी-विंडो मोड को सही ढंग से संभाले — अन्यथा सिस्टम iPad पर Activity को जबरन पुनरारंभ कर सकता है।
Split Screen में प्रवेश करने और बाहर निकलने पर कॉन्फ़िगरेशन परिवर्तन होते हैं: विंडो की चौड़ाई, ऊँचाई और पहलू अनुपात बदल जाते हैं। मानक Android व्यवहार Activity को पुनः बनाना है (onDestroy + onCreate)। इससे बचने के लिए, मेनिफेस्ट में android:configChanges निर्दिष्ट करें।
पुनः बनाने पर, Activity View और ViewModel की स्थिति खो देती है। UI स्थिति को सहेजने के लिए SavedStateHandle या Application-स्कोप्ड ViewModel का उपयोग करें। जटिल ऑब्जेक्ट के लिए विकल्प onRetainNonConfigurationInstance() है।
@Override
fun onConfigurationChanged(newConfig: Configuration) {
super.onConfigurationChanged(newConfig)
val isSplitScreen = isInMultiWindowMode()
if (isSplitScreen) {
adjustLayoutForSplitScreen()
}
}
iPadOS में, समतुल्य तंत्र traitCollectionDidChange या viewWillTransitionToSize है। डेवलपर नया कंटेनर आकार प्राप्त करता है और Size Class के अनुसार लेआउट का पुनर्निर्माण करना चाहिए।
Android पर, Split Screen समर्थन मेनिफेस्ट में resizeableActivity फ़्लैग सेट करने से शुरू होता है। उसके बाद, Activity 220 dp की न्यूनतम चौड़ाई तक सिकुड़ सकती है। यदि ऐप इतनी संकरी स्क्रीन का समर्थन नहीं करता है, तो मेनिफेस्ट में android:minWidth निर्दिष्ट करें।
iPad के लिए, डेवलपर को केवल Size Classes का समर्थन करने और Auto Layout या SwiftUI का उपयोग करने की आवश्यकता है। SwiftUI Split View में प्रवेश करने पर स्वचालित रूप से इंटरफ़ेस को अनुकूलित करता है — उदाहरण के लिए, NavigationSplitView स्टैक्ड और साइड-बाय-साइड मोड के बीच स्विच करता है।
वास्तविक डिवाइसों या मल्टी-रिसाइज़ेबल विंडो सेटिंग वाले एमुलेटर पर Split Screen का परीक्षण करने की अनुशंसा की जाती है। Android Emulator ADB के माध्यम से किसी भी संख्या में विंडो लॉन्च करने और विभिन्न अनुपातों में ऐप के व्यवहार की जाँच करने की अनुमति देता है।
| प्लेटफ़ॉर्म | अनुकूलन तंत्र | न्यूनतम चौड़ाई |
|---|---|---|
| Android | resizeableActivity + configChanges | 220 dp |
| iPadOS | Size Classes + UIScene | 320 pt (प्राथमिक) |
पहली गलती स्थिति संरक्षण को अनदेखा करना है। Split Screen में, Activity उपयोगकर्ता की कार्रवाई के बिना किसी भी समय पुनः बनाई जा सकती है। यदि डेटा केवल स्थानीय चर में संग्रहीत है, तो वह खो जाएगा। स्क्रीन डेटा के लिए ViewModel और महत्वपूर्ण स्थितियों के लिए SavedStateHandle का उपयोग करें।
दूसरी गलती विंडो सिकुड़ने पर सामग्री को छिपाना है। कुछ डेवलपर चौड़ाई एक निश्चित सीमा से नीचे जाने पर तत्वों को छिपा देते हैं। सही दृष्टिकोण लेआउट का पुनर्निर्माण करना है: संकरी स्क्रीन पर, सब कुछ छिपाने के बजाय केवल सबसे महत्वपूर्ण दिखाएँ। Window Size Class इस तर्क के लिए तैयार ब्रेकपॉइंट प्रदान करता है।
तीसरी गलती onWindowFocusChanged को संभालना नहीं है। Split Screen में, फ़ोकस ऐप को बंद किए बिना विंडो के बीच स्विच कर सकता है। इस घटना को अनदेखा करने से वीडियो प्लेयर रुक जाता है जब उपयोगकर्ता बस बगल की विंडो देखता है।
अक्सर पूछे जाने वाले प्रश्न
FLAG_ACTIVITY_LAUNCH_ADJACENT के साथ Intent का उपयोग करें। यदि डिवाइस Split Screen में है, तो ऐप बगल की विंडो में खुलेगा। यदि डिवाइस फ़ुल-स्क्रीन मोड में है, तो फ़्लैग को अनदेखा किया जाता है।
हाँ। Activity दृश्यमान रहती है लेकिन फ़ोकस खो देती है — onPause कॉल किया जाता है, लेकिन onStop नहीं। Split Screen से बाहर निकलने पर, onMultiWindowModeChanged और फिर onResume कॉल किया जाता है।
WindowManager.getCurrentWindowMetrics() या Jetpack WindowManager का उपयोग करें। Display.getSize() का उपयोग न करें — यह पूर्ण स्क्रीन लौटाता है, वर्तमान ऐप विंडो नहीं।
हाँ। खुले हुए डिवाइस पर, Split Screen अक्सर डिफ़ॉल्ट मोड होता है। Samsung Galaxy Z Fold लैंडस्केप मोड में एक साथ तीन ऐप्स के साथ Split Screen प्रदान करता है।
उस Activity के लिए android:resizeableActivity="false" सेट करें। API 24+ के लिए, यह फ़्लैग Split Screen को अक्षम करता है। Android 12L+ पर, android:minWidth और android:minHeight का उपयोग करें।
निष्कर्ष
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें