2015-08-30 6 views
10

मैंने CG_CONTEXT_SHOW_BACKTRACE पर्यावरण परिवर्तनीय YES पर सेट किया है क्योंकि मेरे पास निम्न त्रुटि CGContextSaveGState: invalid context 0x0 थी।CGContextSaveGState: ऐप लॉन्च पर अमान्य संदर्भ 0x0

निम्नलिखित स्टैकट्रैक ने मुझे बहुत मदद नहीं की।

<Error>: CGContextSaveGState: invalid context 0x0. Backtrace: 
     <-[UIStatusBarBatteryItemView contentsImage]+773> 
     <-[UIStatusBarItemView updateContentsAndWidth]+36> 
     <-[UIStatusBarItemView initWithItem:data:actions:style:]+503> 
     <+[UIStatusBarItemView createViewForItem:withData:actions:foregroundStyle:]+159> 
      <-[UIStatusBarLayoutManager _createViewForItem:withData:actions:]+168> 
      <-[UIStatusBarLayoutManager _prepareEnabledItemType:withEnabledItems:withData:actions:itemAppearing:itemDisappearing:]+3 
      <-[UIStatusBarLayoutManager prepareEnabledItems:withData:actions:]+108> 
      <-[UIStatusBarForegroundView _setStatusBarData:actions:animated:]+951> 
       <-[UIStatusBarForegroundView setStatusBarData:actions:animated:]+874> 
       <__51-[UIStatusBar _prepareToSetStyle:animation:forced:]_block_invoke+443> 
       <+[UIView(Animation) performWithoutAnimation:]+82> 
       <-[UIStatusBar _prepareToSetStyle:animation:forced:]+935> 
        <-[UIStatusBar _requestStyleAttributes:animationParameters:forced:]+404> 
        <-[UIStatusBar requestStyle:animationParameters:forced:]+490> 
        <-[UIStatusBar requestStyle:animated:forced:]+113> 
        <-[UIStatusBar forceUpdateStyleOverrides:]+97> 
         <-[UIStatusBar _evaluateServerRegistration]+294> 
         <-[UIStatusBar didMoveToSuperview]+33> 
         <__45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke+683> 
         <-[UIView(Hierarchy) _postMovedFromSuperview:]+484> 
          <-[UIView(Internal) _addSubview:positioned:relativeTo:]+2305> 
          <-[UIView(Hierarchy) addSubview:]+56> 
          <-[UIStatusBarWindow setStatusBar:]+311> 
          <-[UIApplication _createStatusBarWithRequestedStyle:orientation:hidden:]+384> 
           <-[UIApplication _runWithMainScene:transitionContext:completion:]+1047> 
           <__84-[UIApplication _handleApplicationActivationWithScene:transitionContext:completion:]_block_invo 
           <-[UIApplication workspaceDidEndTransaction:]+163> 
           <__37-[FBSWorkspace clientEndTransaction:]_block_invoke_2+71> 
            <__40-[FBSWorkspace _performDelegateCallOut:]_block_invoke+54> 
            <-[FBSSerialQueue _performNext]+184> 
            <-[FBSSerialQueue _performNextFromRunLoopSource]+52> 
            <FBSSerialQueueRunLoopSourceHandler+33> 
             <__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__+15> 
             <__CFRunLoopDoSources0+523> 
             <__CFRunLoopRun+1032> 
             <CFRunLoopRunSpecific+470> 
              <CFRunLoopRunInMode+123> 
              <-[UIApplication _run]+540> 
              <UIApplicationMain+160> 
              <main+94> 

त्रुटि लॉन्च होने पर हो रही है और बैटरी दृश्य के साथ एक समस्या प्रतीत होती है। क्या यह त्रुटि आपको किसी घंटी बजती है?

एफडब्ल्यूडब्ल्यू मेरा ऐप अधिकतर स्विफ्ट 2.0 में लिखा गया है, आईओएस 9 पर एक्सकोड 7 बी 6 के साथ।

+0

मुझे आईओएस 9/एक्सकोड 7 बी 6 के तहत अपने ऐप के साथ लॉन्च करने में एक ही समस्या है। अगर मैं कुछ भी लेकर आऊंगा तो मैं आपको बता दूंगा। – hatfinch

+0

ऐसा लगता है कि यह एक्सकोड 7b6 के साथ ऐप संकलित करते समय सामान्य समस्या है। मैं वही कर रहा हूँ। –

+2

यह अभी भी एक्सकोड 7 जीएम के साथ दिख रहा है। –

उत्तर

6

मुझे एक ही समस्या का सामना करना पड़ा है, और इसका कारण यह था कि, मैं अलग-अलग स्क्रीन के लिए अलग-अलग स्टेटस बार शैलियों को सेट करने के साथ खेल रहा था। इसलिए और मुझे प्लेस्ट के अंदर "कंट्रोलर-आधारित स्टेटस बार उपस्थिति" कुंजी जोड़ने की आवश्यकता थी। और अगर मैं इस कुंजी को हटा देता हूं तो चेतावनी दूर हो जाती है।

+0

आपको यह मिला। मैं पाठ के साथ स्टेटस बार प्राप्त करने के लिए '[[UINavigationBar उपस्थिति] सेटबार स्टाइल: UIBarStyleBlack] का उपयोग करने के लिए चला गया। –

0

जब आप उस त्रुटि अपने कोड में होने वाले देखते हैं, तो इसका मतलब है आप कोर ग्राफिक्स एपीआई के कुछ बिट करने के लिए एक NULL CGContextRef गुजर रहे हैं, जो कुछ भी ड्राइंग तुम नहीं करने के लिए क्या करने की कोशिश कर रहे हैं कारण होगा (इस मामले CGContextSaveGState में) काम या अप्रत्याशित व्यवहार करने के लिए।

इस मामले में, यह आपके कोड में नहीं है, इसलिए आप इसके बारे में ज्यादा कुछ नहीं कर सकते हैं-सौभाग्य से, त्रुटि घातक नहीं है, इसलिए आप इसे सुरक्षित रूप से अनदेखा कर सकते हैं। हालांकि, बैकट्रैक के साथ file a bug करना चाह सकता है।

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