मैं एक एंड्रॉइड ऐप विकसित कर रहा हूं जो केवल फोन के लैंडस्केप स्क्रीन पर फ़िट नहीं होने वाले लेआउट के कारण पोर्ट्रेट मोड में चलाना चाहिए। टैबलेट और नेटबुक पर, हालांकि, मैं चाहता हूं कि ऐप केवल लैंडस्केप मोड में ही चलाए।setRequestedOrentation ProgressDialog को क्रैश करने से पहले
अब मैंने यह जांचने की कोशिश की है कि ऐप टैबलेट डिवाइस पर चल रहा है और setRequestedOrientation के माध्यम से संबंधित अनुरोधित अभिविन्यास सेट कर रहा है।
समस्या यह है कि ऐप क्रैश हो जाता है जब डिवाइस पहले से ही उन्मुखता में आयोजित नहीं होता है, क्योंकि मैं अनुरोध कर रहा हूं, क्योंकि मैं सेट करने के लिए कॉल के कुछ ही समय बाद प्रगति प्रदर्शित करता हूं, जो कि खिड़की को रिसाव करने लगता है।
Logcat का कहना है:
10-18 21:15:30.698: E/WindowManager(653): Activity has leaked window [email protected] that was originally added here
10-18 21:15:30.698: E/WindowManager(653): android.view.WindowLeaked: Activity has leaked window [email protected] that was originally added here
10-18 21:15:30.698: E/WindowManager(653): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:279)
10-18 21:15:30.698: E/WindowManager(653): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:215)
10-18 21:15:30.698: E/WindowManager(653): at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:140)
10-18 21:15:30.698: E/WindowManager(653): at android.view.Window$LocalWindowManager.addView(Window.java:537)
10-18 21:15:31.888: E/WindowManager(653): Activity has leaked window [email protected] that was originally added here
10-18 21:15:31.888: E/WindowManager(653): android.view.WindowLeaked: Activity has leaked window [email protected] that was originally added here
10-18 21:15:31.888: E/WindowManager(653): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:279)
10-18 21:15:31.888: E/WindowManager(653): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:215)
10-18 21:15:31.888: E/WindowManager(653): at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:140)
10-18 21:15:31.888: E/WindowManager(653): at android.view.Window$LocalWindowManager.addView(Window.java:537)
10-18 21:15:34.168: E/AndroidRuntime(653): at android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:599)
10-18 21:15:34.168: E/AndroidRuntime(653): at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:336)
10-18 21:15:34.168: E/AndroidRuntime(653): at android.view.WindowManagerImpl$CompatModeWrapper.removeView(WindowManagerImpl.java:151)
मैं इस दुर्घटना को रोकने के लिए क्या कर सकता है? किसी भी मदद की अत्यधिक सराहना की जाएगी।
संपादित करें: चूंकि मैं इसे हल करने में सक्षम नहीं था, इसलिए मैं अंततः अपने लेआउट को संपादित करने में कामयाब रहा ताकि अब यह पोर्ट्रेट और लैंडस्केप मोड में उपयोग की अनुमति दे।
इतने लंबे उत्तर लिखने के लिए धन्यवाद, लेकिन दुर्भाग्य से यह मेरी समस्या का समाधान नहीं किया। –
कोई समस्या नहीं है। क्षमा करें यह आपकी मदद नहीं करता है। अगली बार यदि आप कुछ स्रोत कोड जोड़ते हैं, तो यह आपके विशिष्ट मुद्दे को ट्रैक करने में मदद करेगा। मुझे एक ही समस्या थी, और यह मेरे विशिष्ट मुद्दे के लिए काम किया। खुशी है कि आप इसे काम कर रहा है। – Dave
धन्यवाद, आपके उत्तर ने मुझे डेव बचाया! असल में, आपको सिर्फ 'android: configChanges = "ओरिएंटेशन" को मैनिफेस्ट में सेट करना होगा और' onRreate() '; –