संपादित 2 महीने पहले द्वारा ExtremeHow संपादकीय टीम
एक्सकोडकोकोपॉड्सनिर्भरतामैकआईओएसएप्पलपैकेज प्रबंधनस्विफ्टऑब्जेक्टिव-सीथर्ड-पार्टी लाइब्रेरीज़
अनुवाद अपडेट किया गया 2 महीने पहले
Xcode में निर्भरताओं का प्रबंधन चुनौतीपूर्ण हो सकता है यदि आप उन उपकरणों से परिचित नहीं हैं जो प्रक्रिया को सरल बनाते हैं। CocoaPods Swift और Objective-C Cocoa परियोजनाओं के लिए सबसे लोकप्रिय निर्भरता प्रबंधकों में से एक है। यह बाहरी पुस्तकालयों को जोड़ने और प्रबंधित करने की प्रक्रिया को सरल बनाता है, जिससे डेवलपर्स को तृतीय-पक्ष कोड के एकीकरण के साथ संघर्ष करने के बजाय अपने ऐप्स बनाने पर ध्यान केंद्रित करने में आसानी होती है। इस व्यापक मार्गदर्शिका में, हम देखेंगे कि Xcode में निर्भरताओं का प्रबंधन करने के लिए प्रभावी रूप से CocoaPods का उपयोग कैसे करें।
CocoaPods एक निर्भरता प्रबंधक है जो विशेष रूप से iOS, macOS, watchOS, और tvOS परियोजनाओं के लिए डिज़ाइन किया गया है। यह एकीकरण को स्वचालित रूप से संभालकर बाहरी पुस्तकालयों के साथ काम करने की प्रक्रिया को सुव्यवस्थित करता है। CocoaPods के साथ, आपको Xcode में पथ और निर्माण सेटिंग्स को मैन्युअल रूप से कॉन्फ़िगर करने की आवश्यकता नहीं है, जो समय बचाता है और कॉन्फ़िगरेशन त्रुटियों की संभावना को समाप्त करता है।
CocoaPods के केंद्र में एक केंद्रीय विनिर्देशन फ़ाइल होती है जिसे Podfile
कहा जाता है। Podfile
निर्दिष्ट करता है कि आपकी परियोजना के लिए कौन से पुस्तकालयों की आवश्यकता है। एक बार जब आप इस फ़ाइल में अपनी निर्भरताएं परिभाषित कर लेते हैं, तो CocoaPods पुस्तकालयों को लाता है और उन्हें शामिल करने के लिए आपके Xcode कार्यक्षेत्र को कॉन्फ़िगर करता है।
CocoaPods का उपयोग शुरू करने से पहले, आपको इसे अपने सिस्टम पर स्थापित करना होगा। CocoaPods एक रूबी रत्न है, इसलिए सुनिश्चित करें कि आपके सिस्टम पर रूबी स्थापित है। macOS आमतौर पर पहले से ही Ruby के साथ आता है। CocoaPods को स्थापित करने के लिए, अपना टर्मिनल खोलें और निम्नलिखित कमांड चलाएं:
sudo gem install cocoapods
यह कमांड CocoaPods को आपके सिस्टम पर स्थापित कर देगा। उचित अनुमतियां देने के लिए आपको अपना सिस्टम पासवर्ड दर्ज करने की आवश्यकता हो सकती है। एक बार स्थापना पूरी हो जाने पर, आप इसे चलाकर सत्यापित कर सकते हैं:
pod --version
यह कमांड स्थापित CocoaPods के संस्करण को प्रदर्शित करेगा, यह दर्शाते हुए कि स्थापना सफल रही।
एक बार CocoaPods स्थापित हो जाने पर, इसे आपके मौजूदा या नए Xcode परियोजना में सेट करने का समय आ गया है। अपने प्रोजेक्ट में CocoaPods को एकीकृत करने के लिए निम्न चरणों का पालन करें:
टर्मिनल में अपनी Xcode परियोजना की रूट निर्देशिका पर जाएँ। इस निर्देशिका में .xcodeproj
फ़ाइल होनी चाहिए। Podfile
बनाने के लिए निम्नलिखित कमांड चलाएँ:
pod init
इस कमांड से आपके प्रोजेक्ट निर्देशिका में एक डिफ़ॉल्ट Podfile
बन जाएगा। इसकी सामग्री को देखने के लिए किसी भी टेक्स्ट एडिटर के साथ Podfile
खोलें। Podfile
कुछ इस तरह दिखेगा:
# अपनी परियोजना के लिए एक वैश्विक प्लेटफॉर्म परिभाषित करने के लिए अगली पंक्ति को अनचेक करें
# platform :ios, '9.0'
target 'YourProjectName' do
# यदि आप स्विफ्ट का उपयोग नहीं कर रहे हैं और गतिशील फ्रेमवर्क का उपयोग नहीं करना चाहते हैं तो अगली पंक्ति टिप्पणी करें
use_frameworks!
# YourProjectName के लिए पॉड्स
end
यह निर्दिष्ट करने के लिए कि आप किन पुस्तकालयों को अपनी परियोजना में शामिल करना चाहते हैं, Podfile
को संपादित करें और उन्हें YourProjectName
लक्ष्य के तहत शामिल करें। उदाहरण के लिए, Alamofire पुस्तकालय (एक लोकप्रिय स्विफ्ट-आधारित HTTP नेटवर्किंग लाइब्रेरी) जोड़ने के लिए, Podfile
को इस तरह संशोधित करें:
# अपनी परियोजना के लिए एक वैश्विक प्लेटफॉर्म परिभाषित करने के लिए अगली पंक्ति को अनचेक करें
platform :ios, '10.0'
target 'YourProjectName' do
use_frameworks!
# YourProjectName के लिए पॉड्स
pod 'Alamofire', '~> 5.4'
end
उपरोक्त उदाहरण में, हमने यह भी निर्दिष्ट किया है कि हमारी परियोजना का समर्थन करने वाला iOS का न्यूनतम संस्करण platform :ios, '10.0'
का उपयोग करके है। Alamofire का संस्करण '~> 5.4'
के साथ निर्दिष्ट किया गया है, जिसका अर्थ है कि 5.4.0 से 5.4.9999 तक का कोई भी संस्करण स्वीकार किया जाएगा।
Podfile
अपनी निर्भरताओं के साथ संपादित करने के बाद, उन्हें स्थापित करने के लिए अपनी प्रोजेक्ट निर्देशिका के टर्मिनल में निम्नलिखित कमांड चलाएँ:
pod install
यह कमांड आपकी Podfile
में निर्दिष्ट प्रत्येक निर्भरता की जांच करता है, आवश्यक फाइलों को प्राप्त करता है, और एक Xcode कार्यक्षेत्र फ़ाइल (.xcworkspace
) बनाकर उन्हें आपकी परियोजना में एकीकृत करता है। आगे बढ़ते हुए, आपको अपनी परियोजना पर काम करते समय .xworkspace
फ़ाइल खोलनी चाहिए, न कि .xcodeproj
फ़ाइल।
एक बार जब पुस्तकालय स्थापित और कॉन्फ़िगर हो जाते हैं, तो आपकी परियोजना में उनका उपयोग करने का समय आ गया है। स्विफ्ट फ़ाइलों में लाइब्रेरी को शामिल करने के लिए import
कथन का उपयोग करें। Alamofire उदाहरण को जारी रखते हुए, इसे स्विफ्ट फ़ाइल में उपयोग करने के लिए, आप लिखेंगे:
import Alamofire
अब आप अपने कोड में Alamofire API और फंक्शन्स का उपयोग कर सकते हैं! यदि आपने अन्य पुस्तकालय जोड़े हैं, तो उन फ़ाइलों में व्यक्तिगत रूप से आयात करें जहाँ आप उनका उपयोग करना चाहते हैं।
निर्भरता प्रबंधन एक बार का कार्य नहीं है। पुस्तकों को अक्सर बग फिक्स और नई सुविधाओं के साथ अपडेट किया जाता है, इसलिए यह सुनिश्चित करना महत्वपूर्ण है कि आपकी निर्भरताएं अद्यतित रहें। अपनी CocoaPods निर्भरताओं को कुशलतापूर्वक बनाए रखने के लिए यहां कुछ सुझाव दिए गए हैं:
यदि आप विशिष्ट निर्भरता को अपडेट करना चाहते हैं, तो आप इसके संस्करण को Podfile
में संशोधित कर सकते हैं और चला सकते हैं:
pod update LibraryName
यह कमांड निर्दिष्ट लाइब्रेरी और उसकी निर्भरताओं को नवीनतम संस्करण में अपडेट करता है जो आपकी अन्य लाइब्रेरी के साथ संगत है। LibraryName
को उस वास्तविक लाइब्रेरी नाम से बदलें जिसे आप अपडेट करना चाहते हैं।
सभी निर्भरताओं को उनके नवीनतम संगत संस्करण में अपडेट करने के लिए, बस चलाएं:
pod update
इस कमांड से आपकी Podfile
में सूचीबद्ध सभी लाइब्रेरी अपडेट हो जाती हैं और यह सुनिश्चित होता है कि आपकी परियोजना नवीनतम संस्करणों का उपयोग करती है।
यदि आपको लाइब्रेरी की अब आवश्यकता नहीं है, तो इसे हटाना आसान है। Podfile
में संबंधित पंक्ति को हटाएँ या टिप्पणी करें और फिर चलाएँ:
pod install
यह कमांड आपकी परियोजना से लाइब्रेरी को हटा देगा, साथ ही CocoaPods द्वारा बनाई गई कोई भी फ़ाइल और संदर्भ हटा देगा।
CocoaPods के साथ काम करते समय, कई आवश्यक कमांड होते हैं जो आपको निर्भरताओं को प्रभावी ढंग से प्रबंधित करने में मदद कर सकते हैं। यहां उपयोगी कमांड का एक संक्षिप्त अवलोकन दिया गया है:
pod install
: Podfile
या Podfile.lock
में निर्धारित संस्करणों के आधार पर निर्भरताओं को स्थापित करता है। हमेशा Podfile
को संशोधित करते समय उपयोग करें।pod update
: पॉड्स को अपडेट करके उन्हें निर्दिष्ट रेंज के भीतर नवीनतम संभव संस्करण तक लाया जा सकता है।pod deintegrate
: यदि आप इसका उपयोग बंद करना चाहते हैं तो यह आपकी परियोजना से सभी CocoaPods कॉन्फ़िगरेशन को सुरक्षित रूप से हटा देता है।pod repo update
: स्थानीय स्पेक-रेपो को अपडेट करता है, यह सुनिश्चित करता है कि आपके पास सभी उपलब्ध लाइब्रेरी और उनके संस्करणों की नवीनतम सूची है।pod install --repo-update
: इंस्टॉल करने से पहले स्पेक्स रेपो को अपडेट करता है, उपयोगी यदि कोई नया रिलीज़ पता नहीं चलता है।हालांकि CocoaPods निर्भरता प्रबंधन को सरल बनाता है, फिर भी आपको कभी-कभी समस्याओं का सामना करना पड़ सकता है। यहां हम कुछ सामान्य समस्याओं और उन्हें हल करने के तरीकों पर चर्चा करते हैं:
अगर pod install
या pod update
विफल होता है, तो निम्नलिखित चरणों का प्रयास करें:
Podfile
सिंटैक्स सही है और इसमें कोई टाइपिंग त्रुटि नहीं है।pod repo update
चलाएं।Podfile.lock
और Pods/
निर्देशिका को हटा दें, फिर pod install
को फिर से आज़माएँ।यह महत्वपूर्ण है कि .xcworkspace
फ़ाइल खोलें, न कि .xcodeproj
फ़ाइल। यदि आपको कार्यक्षेत्र के साथ समस्याओं का सामना करना पड़ता है, तो सुनिश्चित करें कि कॉन्फ़िगरेशन केवल कार्यक्षेत्र फ़ाइल में ही किया जाता है।
यदि पॉड जोड़ने के बाद निर्माण विफल होता है:
pod update
चलाने का प्रयास करें।Xcode में निर्भरताओं का प्रबंधन करने के लिए CocoaPods का उपयोग करने से तृतीय-पक्ष पुस्तकालयों के एकीकरण की जटिलता काफी कम हो जाती है। इस मार्गदर्शिका में दिए गए चरणों का पालन करके, आप अपने विकास प्रक्रिया को सुव्यवस्थित कर सकते हैं, अद्यतित पुस्तकालयों को बनाए रख सकते हैं, और अपने एप्लिकेशन कोड को लिखने पर अधिक ध्यान केंद्रित कर सकते हैं। अपने कोडबेस को स्वस्थ एवं कुशल बनाए रखने हेतु समय-समय पर अपनी निर्भरताओं को अपडेट एवं बनाए रखना सुनिश्चित करें।
यदि आपको लेख की सामग्री में कुछ गलत लगता है, आप कर सकते हैं