2013-10-05 7 views
5

हमारा पुराना ऐप एमकेनेटवर्ककिट और एमकेनेटवर्क ऑपरेशन का उपयोग करता है।आईओएस 7 में kSecTrustResultConfirm के लिए विकल्प क्या है?

अब आईओएस 7 kSecTrustResultConfirm के तहत बहिष्कृत किया गया है।

else if(result == kSecTrustResultConfirm) { // DEPRECATED 

      if(self.shouldContinueWithInvalidCertificate) { 

      // Cert not trusted, but user is OK with that 
      DLog(@"Certificate is not trusted, but self.shouldContinueWithInvalidCertificate is YES"); 
      [challenge.sender useCredential:[NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust] forAuthenticationChallenge:challenge]; 
      } else { 

      DLog(@"Certificate is not trusted, continuing without credentials. Might result in 401 Unauthorized"); 
      [challenge.sender continueWithoutCredentialForAuthenticationChallenge:challenge]; 
      } 
     } 

वहाँ kSecTrustResultConfirm के लिए प्रतिस्थापन है: MKNetworkOperation में, वहाँ इस कोड है?

+0

वही समस्या यहां है, क्या आपने इसे हल किया? – Vik

+0

प्रलेखन संदर्भ: https://developer.apple.com/library/ios/documentation/Security/Reference/certifkeytrustservices/Reference/reference.html#//apple_ref/c/econst/kSecTrustResultConfirm –

+0

मैं आपको लगता है कि आवश्यकता नहीं आईओएस 7 में इस मामले की जांच के लिए क्योंकि यह मान कभी वापस नहीं आया है। संक्षेप में कोड के ब्लॉक जो इस पर सशर्त है # ifdef'd और अनदेखा किया जा सकता है। हालांकि यकीन नहीं है। अभी भी पूरे एपीआई के चारों ओर अपने सिर लपेटने की कोशिश कर रहा है। –

उत्तर

0

यदि आप किसी भी कारण से एमकेनेटवर्ककिट अपडेट नहीं कर सकते हैं, तो इस प्रतिबद्धता को देखें: https://github.com/MugunthKumar/MKNetworkKit/commit/c28959805991bb8f0e99ede9c822e985b41f6fc9। आप देखेंगे कि kSecTrustResultConfirm सशर्त को पूरी तरह हटा दिया गया है, और आपको ऐसा करने में सक्षम होना चाहिए।

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