iOS के लिए, कास्ट ऐप्लिकेशन फ़्रेमवर्क (सीएएफ़) के साथ डेवलप करने के लिए सेटअप

Cast फ़्रेमवर्क, iOS 16 और इसके बाद के वर्शन पर काम करता है. यह स्टैटिक और डाइनैमिक, दोनों तरह के फ़्रेमवर्क में उपलब्ध है.

सभी क्लास और तरीकों के बारे में जानकारी पाने के लिए, Google Cast iOS API का रेफ़रंस देखें.

Xcode सेटअप करना

  1. अपने प्रोजेक्ट में Cast iOS SDK 4.8.6 जोड़ना

    अगर Swift Package Manager का इस्तेमाल किया जा रहा है, तो google-cast-ios-sdk पैकेज को 4.8.6 वर्शन पर अपडेट करें.

    इसके अलावा, एसडीके को मैन्युअल तरीके से पुल करें.

  2. NSBonjourServices को अपनी Info.plist में जोड़ें

    लोकल नेटवर्क डिस्कवरी की सुविधा को काम करने की अनुमति देने के लिए, अपने Info.plist में NSBonjourServices तय करें.

    डिवाइस डिस्कवरी की सुविधा को ठीक से काम करने के लिए, आपको _googlecast._tcp और _<your-app-id>._googlecast._tcp, दोनों को सेवाओं के तौर पर जोड़ना होगा.

    appID, आपका receiverID होता है. यह वही आईडी होता है जो आपके GCKDiscoveryCriteria में तय किया गया है.

    यहां दिए गए उदाहरण NSBonjourServices की परिभाषा को अपडेट करें और "ABCD1234" की जगह अपना ऐप्लिकेशन आईडी डालें.

    <key>NSBonjourServices</key>
    <array>
      <string>_googlecast._tcp</string>
      <string>_ABCD1234._googlecast._tcp</string>
    </array>
  3. NSLocalNetworkUsageDescription को अपने Info.plist में जोड़ें

    हमारा सुझाव है कि आप लोकल नेटवर्क प्रॉम्प्ट में दिखने वाले मैसेज को पसंद के मुताबिक बनाएं. इसके लिए, अपने ऐप्लिकेशन के Info.plist फ़ाइल में ऐप्लिकेशन के हिसाब से अनुमति वाली स्ट्रिंग जोड़ें. जैसे, NSLocalNetworkUsageDescription का इस्तेमाल करके, कास्टिंग की सुविधा वाले डिवाइसों और DIAL जैसी अन्य डिवाइसों का पता लगाने की सेवाओं के बारे में बताएं.

    <key>NSLocalNetworkUsageDescription</key>
    <string>${PRODUCT_NAME} uses the local network to discover Cast-enabled devices on your WiFi
    network.</string>

    यह मैसेज, iOS के लोकल नेटवर्क ऐक्सेस डायलॉग के हिस्से के तौर पर दिखेगा. यह मॉक में दिखाया गया है.

    कास्ट करने के लिए, लोकल नेटवर्क के ऐक्सेस की अनुमतियों वाले डायलॉग बॉक्स की इमेज
  4. Apple App Store पर अपना ऐप्लिकेशन फिर से रिलीज़ करना

    हमारा सुझाव है कि आप अपने ऐप्लिकेशन को 4.8.6 का इस्तेमाल करके जल्द से जल्द फिर से रिलीज़ करें.

Swift Package Manager सेटअप करना

Google Cast को इंटिग्रेट करने का सबसे सही तरीका, Swift Package Manager (एसपीएम) का इस्तेमाल करना है. Cast iOS SDK पैकेज, google-cast-ios-sdk GitHub रिपॉज़िटरी से उपलब्ध है.

Xcode में अपने प्रोजेक्ट में Cast iOS SDK जोड़ने के लिए:

  1. Xcode में, File > Add Packages... को चुनें.
  2. डेटा स्टोर करने की जगह का यूआरएल डालें: https://github.com/googlecast/google-cast-ios-sdk.
  3. वर्शनिंग के नियम चुनें. उदाहरण के लिए, 4.8.6 के कम से कम वर्शन के साथ अगले मुख्य वर्शन तक को चुनें, ताकि आपको बिना किसी रुकावट के काम करने वाले अपडेट मिल सकें.
  4. Add Package पर क्लिक करें.
  5. GoogleCastDynamic या GoogleCastStatic प्रॉडक्ट में से कोई एक चुनें और उसे अपने ऐप्लिकेशन टारगेट में जोड़ें.

फ़्रेमवर्क का कोई वैरिएंट चुनें

Cast iOS SDK पैकेज में दो प्रॉडक्ट शामिल हैं:

  • GoogleCastDynamic: डाइनैमिक फ़्रेमवर्क. इसमें Cast UI कॉम्पोनेंट के लिए ज़रूरी सभी ऐसेट रिसॉर्स शामिल होते हैं. साथ ही, इसके लिए किसी अन्य लिंकर फ़्लैग की ज़रूरत नहीं होती. Mac Catalyst के साथ काम करने वाले ऐप्लिकेशन को डाइनैमिक फ़्रेमवर्क का इस्तेमाल करना चाहिए. ज़्यादा जानकारी के लिए, Mac Catalyst सेटअप करना लेख पढ़ें.
  • GoogleCastStatic: स्टैटिक फ़्रेमवर्क. इसके लिए, स्टैटिक फ़्रेमवर्क सेटअप में बताए गए अतिरिक्त सेटअप चरणों को पूरा करना ज़रूरी है.

स्टैटिक फ़्रेमवर्क सेटअप करना

स्टैटिक फ़्रेमवर्क में रिसॉर्स बंडल शामिल नहीं किए जा सकते. इस वजह से, Swift Package Manager, Cast यूज़र इंटरफ़ेस (यूआई) कॉम्पोनेंट के लिए ज़रूरी ऐसेट रिसॉर्स (जैसे कि यूज़र इंटरफ़ेस (यूआई) इमेज, स्टोरीबोर्ड, और स्थानीय भाषा की फ़ाइलें) को GoogleCastStatic प्रॉडक्ट के साथ अपने-आप बंडल नहीं कर सकता. अगर आपको अपने टारगेट में GoogleCastStatic जोड़ना है, तो यह तरीका अपनाएं:

  1. अपने Xcode प्रोजेक्ट में, Build Settings > Other Linker Flags में -ObjC -lc++ फ़्लैग जोड़ें.
  2. अगर आपका ऐप्लिकेशन, Cast UI कॉम्पोनेंट का इस्तेमाल करता है, तो अपने प्रोजेक्ट में ऐसेट बंडल को मैन्युअल तरीके से जोड़ें:
    1. डाउनलोड से स्टैटिक लाइब्रेरी डाउनलोड करें. पक्का करें कि स्टैटिक लाइब्रेरी का वर्शन, जोड़े गए पैकेज के वर्शन से मेल खाता हो.
    2. अनज़िप की गई डायरेक्ट्री में मौजूद Resources फ़ोल्डर ढूंढें. इसके बाद, सभी .bundle फ़ाइलों को अपने Xcode प्रोजेक्ट में खींचें और छोड़ें. 'ज़रूरत पड़ने पर सभी आइटम कॉपी करें' को चुनें और सभी टारगेट में जोड़ें.

CocoaPods सेटअप करना

मैन्युअल सेटअप

यहां दिए गए निर्देशों में, Swift Package Manager का इस्तेमाल किए बिना, अपने प्रोजेक्ट में Cast iOS SDK जोड़ने का तरीका बताया गया है:

डाउनलोड

यहां दी गई लाइब्रेरी डाउनलोड करने के बाद, अपने प्रोजेक्ट में फ़्रेमवर्क जोड़ने के लिए, सेटअप करने का तरीका अपनाएं.

Cast iOS Sender SDK 4.8.6 की लाइब्रेरी:

स्टैटिक डाइनैमिक

सेटअप करने का तरीका

लाइब्रेरी इंस्टॉल करने के लिए:

  1. अपने प्रोजेक्ट के लिए सही एसडीके डाउनलोड करें और उसे एक्सट्रैक्ट करें.
  2. GoogleCastSDK की डाइनैमिक लाइब्रेरी सेट अप करें:
  3. अनज़िप किए गए .xcframework को Xcode प्रोजेक्ट नेविगेटर में मौजूद अपने मुख्य प्रोजेक्ट में खींचें और छोड़ें. 'अगर ज़रूरी हो, तो सभी आइटम कॉपी करें' को चुनें और सभी टारगेट में जोड़ें.
  4. अपने Xcode टारगेट में, General टैब में जाकर, GoogleCast.xcframework के लिए Embed and Sign चुनें.

अगर आपको डाइनैमिक लाइब्रेरी सेट अप करनी है, तो पिछले चरणों के साथ-साथ यह तरीका भी अपनाएं:

  1. अगर GoogleCastSDK का मौजूदा वर्शन मौजूद है, तो उसे हटा दें.
  2. Protobuf लाइब्रेरी v3.13 या इसके बाद का वर्शन जोड़ें. इसके लिए, Protobuf GitHub repo पर दिए गए निर्देशों का पालन करें.

अगर आपको स्टैटिक लाइब्रेरी सेट अप करनी है, तो पिछले चरणों के साथ-साथ यह तरीका भी अपनाएं:

  1. अपने Xcode प्रोजेक्ट में, -ObjC -lc++ फ़्लैग को Build Settings > Other Linker Flags में जोड़ें.
  2. अनज़िप की गई डायरेक्ट्री में Resources फ़ोल्डर ढूंढें. इसके बाद, सभी .bundle फ़ाइलों को अपने प्रोजेक्ट में, पहले जोड़े गए GoogleCast.xcframework के बगल में खींचें और छोड़ें. 'अगर ज़रूरी हो, तो सभी आइटम कॉपी करें' को चुनें और सभी टारगेट में जोड़ें.

Mac Catalyst सेटअप करना

Mac Catalyst के साथ काम करने वाले ऐप्लिकेशन के लिए, Cast SDK की डाइनैमिक लाइब्रेरी का इस्तेमाल करें. अपने प्रोजेक्ट में फ़्रेमवर्क जोड़ने के लिए, मैन्युअल सेटअप करने की प्रोसेस अपनाएं. इसके बाद, Apple के दस्तावेज़ में बताए गए तरीके से, Mac टारगेट से Cast SDK को कुछ शर्तों के साथ बाहर रखें. स्टैटिक लाइब्रेरी को iOS आर्किटेक्चर के लिए पहले से कंपाइल किया जाता है. इस वजह से, Mac टारगेट के लिए बिल्ड करते समय लिंकर से जुड़ी गड़बड़ी होती है.