खोज…


सही कोड साइनिंग अप्रोच चुनें

यदि आप एक नई परियोजना शुरू कर रहे हैं, तो यह सोचना महत्वपूर्ण है कि आप कोड हस्ताक्षर को कैसे संभालना चाहते हैं।

यदि आप कोड हस्ताक्षर करने के लिए नए हैं, तो WWDC सत्र की जाँच करें जो Xcode में कोड हस्ताक्षर करने के मूल सिद्धांतों का वर्णन करता है।

अपने ऐप को ठीक से कोड-साइन करने के लिए, आपको अपने स्थानीय मशीन पर निम्नलिखित संसाधन रखने होंगे:

  • निजी कुंजी ( .p12 फ़ाइल)
  • प्रमाणपत्र ( .cer फ़ाइल), निजी कुंजी से मेल खाता है
  • प्रमाण पत्र और स्थानीय रूप से स्थापित निजी कुंजी से मेल खाते हुए प्रोविजनिंग प्रोफाइल ( .mobileprovision फ़ाइल)

Apple डेवलपर पोर्टल पर आपके प्रोविज़निंग प्रोफाइल के साथ एक वैध ऐप आईडी होना आवश्यक है।

Xcode के कोड साइनिंग फीचर का उपयोग करना

कभी-कभी प्रोविजनिंग प्रोफाइल के रूप में Automatic सेटिंग मज़बूती से काम नहीं करती क्योंकि यह सर्टिफ़िकेट स्थापित होने पर कोई फर्क नहीं पड़ता कि हाल ही में अपडेट की गई प्रोविज़निंग प्रोफ़ाइल का चयन होगा।

इसीलिए किसी विशिष्ट प्रोविज़निंग प्रोफाइल को किसी तरह निर्दिष्ट करने की अनुशंसा की जाती है:

Xcode 7 और निचला

आपको Fix Issue बटन पर क्लिक करने से बचना चाहिए (इसमें एक Xcode प्लगइन है जो बटन को निष्क्रिय करता है), क्योंकि यह कभी-कभी मौजूदा प्रमाणपत्रों को रद्द कर देता है, और इसके साथ प्रोविज़निंग प्रोफाइल।

दुर्भाग्यवश आप Xcode 7 में प्रोविज़निंग प्रोफाइल का नाम निर्दिष्ट नहीं कर सकते हैं। इसके बजाय आप प्रोफ़ाइल के UUID को निर्दिष्ट कर सकते हैं, जो हर बार प्रोफ़ाइल को फिर से जनरेट होने पर बदलता है (उदाहरण के लिए जब आप एक नया डिवाइस जोड़ते हैं)।

इस समस्या को हल करने के लिए, XcodeProject.md की जाँच करें कि अपने ऐप का निर्माण करते समय Xcode के लिए प्रोविज़निंग प्रोफ़ाइल कैसे दें।

Xcode 8 और ऊपर

Apple ने Xcode 8 की रिलीज़ के साथ कोड में बहुत सुधार किया, निम्नलिखित बदल गया है:

  • कोई और अधिक Fix Issue बटन नहीं, इसके बजाय सभी कोड हस्ताक्षर प्रक्रियाएं पृष्ठभूमि में चलती हैं और Xcode में लॉग राइट दिखाती हैं
  • अब आप UUID के बजाय नाम से प्रोविज़निंग प्रोफ़ाइल निर्दिष्ट कर सकते हैं (अधिक जानकारी के लिए XcodeProject.md देखें)
  • जब कुछ गलत होता है तो त्रुटि संदेश सुधर जाता है। यदि आप कोड साइनिंग त्रुटियों में भाग लेते हैं, तो आपको अधिक विस्तृत त्रुटि जानकारी प्राप्त करने के लिए हमेशा Xcode के साथ निर्माण और हस्ताक्षर करने का प्रयास करना चाहिए। (अधिक जानकारी के लिए ट्रबलशूटिंग.कॉम देखें)

मैन्युअल

आप Apple डेवलपर पोर्टल का उपयोग करके अपने प्रमाणपत्रों और प्रोविजनिंग प्रोफाइल को मैन्युअल रूप से बना और प्रबंधित कर सकते हैं। अपने प्रमाणपत्रों की निजी कुंजी ( .p12 ) को सुरक्षित स्थान पर संग्रहीत करना सुनिश्चित करें, क्योंकि यदि आप उन्हें खो देते हैं तो उन्हें बहाल नहीं किया जा सकता है।

आप हमेशा Apple डेवलपर पोर्टल से प्रमाणपत्र ( .cer ) और प्रोविज़निंग प्रोफाइल ( .mobileprovision ) डाउनलोड कर सकते हैं।

यदि आप अपना प्रमाणपत्र रद्द करते हैं या यह समाप्त हो जाता है, तो सभी संबद्ध प्रावधान प्रोफ़ाइल अमान्य हो जाएंगे।

फास्टलेन मैच का उपयोग करना

मैच की अवधारणा कोडिंग गाइड में वर्णित है और यदि आप फास्टलेन का उपयोग करते हैं तो अनुशंसित कोड साइनिंग दृष्टिकोण है

मैच के साथ आप अपनी निजी कुंजियों और प्रमाणपत्रों को मशीनों में समेटने के लिए एक git रेपो में संग्रहीत करते हैं। इससे टीम के नए सदस्यों को सेट करना और मैक मशीनों को स्थापित करना आसान हो जाता है। यह दृष्टिकोण सुरक्षित है और आपके द्वारा पहले से उपयोग की गई तकनीक का उपयोग करता है।

मैच के साथ शुरुआत करने से आपको अपने मौजूदा प्रमाणपत्रों को रद्द करना होगा।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow