ios - कैसे एक स्विफ्ट प्रोजेक्ट में ऑब्जेक्टिव-सी कोकोआपोड्स का उपयोग करें




objective-c swift (3)

आपके प्रश्न का मूल उत्तर है हां, आप कोकोआपोड्स के साथ निर्मित उद्देश्य-सी कोड का उपयोग कर सकते हैं।

अधिक महत्वपूर्ण सवाल यह है कि "ऐसे कामों का उपयोग कैसे करें?"
इस सवाल का जवाब use_frameworks! पर निर्भर करता है use_frameworks! अपने Podfile में झंडा:
आइए कल्पना करें कि आप CoolObjectiveCLib नाम के साथ Objective-C pod का उपयोग करना चाहते हैं।

यदि आपकी पॉड फ़ाइल का use_frameworks! करता है use_frameworks! झंडा:

// Podfile
use_frameworks!
pod 'CoolObjectiveCLib'

फिर आपको किसी भी पुल हेडर फ़ाइलों को जोड़ने की आवश्यकता नहीं है।
सब कुछ है कि आप की जरूरत है स्विफ्ट स्रोत फ़ाइल में आयात रूपरेखा है:

// MyClass.swift
import CoolObjectiveCLib

अब आप उन सभी वर्गों का उपयोग कर सकते हैं जो परिवाद में प्रस्तुत किए गए हैं।

यदि आपकी पॉड फ़ाइल का use_frameworks! नहीं करता है use_frameworks! झंडा:

// Podfile
pod 'CoolObjectiveCLib'

फिर आपको ब्राइडिंग हेडर फ़ाइल बनाने और सभी आवश्यक ऑब्जेक्टिव-सी हेडर आयात करने की आवश्यकता है:

// MyApp-Bridging-Header
#import "CoolObjectiveCLib.h"

अब आप उन सभी वर्गों का उपयोग कर सकते हैं जो आयातित हेडर में परिभाषित हैं।

क्या मैं स्विफ्ट परियोजना में स्विफ्ट का उपयोग करके ऑब्जेक्ट-सी में लिखे गए कोकोपॉड का उपयोग कर सकता हूं?

क्या मैं सिर्फ एक ब्रिजिंग हेडर बनाता हूं? और यदि हां, तो क्या मैं स्विफ्ट में कोकोआपोड में पुस्तकालयों द्वारा परिभाषित वस्तुओं, वर्गों और क्षेत्रों तक पहुंच सकता हूं?


आपको बस एक ब्रिजिंग हेडर की आवश्यकता है और वहां पर आयात करें जो आपको चाहिए।


पॉडफाइल में फ्लैग का उपयोग use_frameworks ! निर्भरता में Pod फ़ोल्डर संरचना में Xcode के अंदर, आप समर्थन फ़ाइलों में xxxxxxx-umbrella.h . xxxxxxx-umbrella.h जोड़ते हैं।

आपके {PROJECT_NAME}-Bridging-Header.h उपयोग में:

#import "xxxxxxx/xxxxxxx-umbrella.h"

इससे मेरा काम बनता है।





cocoapods