2013-10-07 6 views
6

अंतिम अद्यतन मेरे ऐप निम्न समस्या है के बाद:AndroidRuntimeException: requestFeature() सामग्री अनन्य जोड़ने से पहले बुलाया जाना चाहिए 3.1 मधुकोश के लिए - 3.2.1

java.lang.RuntimeException: Unable to start activity ComponentInfo{my.package/my.package.MyMainActivity}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1818) 
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1834) 
at android.app.ActivityThread.access$500(ActivityThread.java:122) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1027) 
at android.os.Handler.dispatchMessage(Handler.java:99) 
at android.os.Looper.loop(Looper.java:132) 
at android.app.ActivityThread.main(ActivityThread.java:4126) 
at java.lang.reflect.Method.invokeNative(Native Method) 
at java.lang.reflect.Method.invoke(Method.java:491) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602) 
at dalvik.system.NativeStart.main(Native Method) 
Caused by: android.util.AndroidRuntimeException: requestFeature() must be called before adding content 
at com.android.internal.policy.impl.PhoneWindow.requestFeature(PhoneWindow.java:214) 
at android.support.v7.app.ActionBarActivityDelegateHC.onCreate(ActionBarActivityDelegateHC.java:38) 
at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:98) 
at my.package.MyBaseActivity.onCreate(MyBaseActivity.java:68) 
at my.package.MyApiServiceActivity.onCreate(MyApiServiceActivity.java:51) 
at my.package.MyActivity.onCreate(MyActivity.java:88) 
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1050) 
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1782) 
... 11 more 

हालांकि, मैं कभी नहीं फोन कर रहा हूँ requestWindowFeature या इसी तरह की। इसमें कोई संवाद शामिल नहीं है। रिपोर्ट स्वयं बगसेन से आती है, मुझे कभी भी यह समस्या नहीं थी। यह एक काफी लोकप्रिय ऐप है और यह मुद्दा अनन्य एंड्रॉइड हनीकॉम: 3.2, 3.2.1 और 3.1 है। यह ऐप के पिछले संस्करण में नहीं हुआ था। अपडेट के बाद से onCreate फ़ंक्शन में एकमात्र परिवर्तन यह तथ्य है कि मैंने ActionBarSherlock से ActionBarCompat पर स्विच किया था।

किसी ने भी इस मुद्दे को देखा और/या इस समस्या को दूर करने के लिए कोई विचार है?

संपादित करें: मैं v7 पैकेज से the source for ActionBarActivityDelegateHC के लिए लिंक द्वारा जोड़ा जा रहा है, जहां दुर्घटना स्टैक ट्रेस (... की वजह से) शुरू होता है। अनुरोध है फीचर कॉल होता है, लेकिन इसे super.onCreate से पहले भी सही ढंग से कहा जाता है।

मैं Gradle का उपयोग पैकेज आयात करने के लिए: compile 'com.android.support:appcompat-v7:18.0.+'

+1

घूर्णन के दौरान एक ही समस्या, मुझे लगता है कि शहद के उपकरणों पर अभिविन्यास को लॉक करके इसे ठीक करना है। हनीकॉम के लिए बहुत दुखद आंकड़े हैं: http://developer.android.com/about/dashboards/index.html#Platform, इसलिए हम इसकी परवाह नहीं करेंगे) –

+0

@Shomeser क्या आपको पता है कि यह समस्या घूर्णन के लिए विशिष्ट है या नहीं? – zilinx

+0

मैं इसे केवल घूर्णन के दौरान पुन: पेश करता हूं, इसलिए मैं हनीकोम्ब पर लैंडस्केप ओरिएंटेशन लॉक कर दूंगा, लेकिन यदि आपको कोई उपयुक्त समाधान मिल जाए, तो मैं इसे –

उत्तर

6

तो @shomeser (प्रश्न के लिए टिप्पणी) से समाधान की तरह दिखता है कुछ समय के लिए जाने के लिए एक तरीका है।

वहाँ समझौता करने के दो तरीके हैं: क्या आप कुछ पूछना चाहते हैं तो हैंडलिंग

  • :

    • आप परिदृश्य और चित्र के लिए विभिन्न लेआउट की जरूरत नहीं है, तो आप उन्मुखीकरण परिवर्तन निष्क्रिय कर सकते हैं (android:configChanges="screenSize|orientation" AndroidManifest में) उन्मुखीकरण परिवर्तन पर और "configChanges" का उपयोग नहीं कर सकते हैं, तो आप उन्मुखीकरण लॉक कर सकते हैं (onCreate में)
     
        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB 
          || Build.VERSION.SDK_INT <= Build.VERSION_CODES.HONEYCOMB_MR2) 
        { 
         this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
        } 
    
    • और आखिर में मेरा सबसे कम पसंदीदा (हालांकि इसे पूरा करने के लिए पोस्ट करना), एबीसी छोड़ें और एबीएस पर वापस जाएं।

    मैंने ticket on Android Issue Tracker भी पोस्ट किया, लेकिन यह एक हनीकॉम मुद्दा है, मुझे जवाब मिलने की उम्मीद नहीं है।

    अद्यतन: विशिष्ट हनीकॉम्ब उपकरणों के लिए लॉक ओरिएंटेशन के साथ ऐप जारी करने के बाद, मुझे अभी भी यह क्रैश होने की सूचना दी जा रही है, हालांकि कम बार-बार।

    अद्यतन 2: जारी करना तय किया गया था! अब नए समर्थन की रिहाई के लिए प्रतीक्षा करें lib: google issue tracker

  • +0

    क्या आपके पास दुर्घटना का स्टैकट्रैक है, क्या यह पहले जैसा ही है? और क्या आपने अपने डिवाइस को वास्तविक डिवाइस पर परीक्षण किया था? –

    +0

    @Shomeser यह वही स्टैक ट्रेस है - यह उन गतिविधियों पर दुर्घटनाग्रस्त है जो अभिविन्यास को बंद कर चुके हैं; बग रिपोर्ट वास्तविक उपकरणों को इंगित करती है (हमेशा एक ही हनीकॉम संस्करण)। – zilinx

    +0

    कृपया मुझे अपने आवेदन का एक लिंक दें, कृपया। मुझे लगता है कि आप इसे रोक और फिर से शुरू करने के बाद पुन: उत्पन्न कर सकते हैं। –

    संबंधित मुद्दे