IMA SDK की मदद से, अपनी वेबसाइटों और ऐप्लिकेशन में मल्टीमीडिया विज्ञापन आसानी से इंटिग्रेट किए जा सकते हैं. IMA SDK, VAST के साथ काम करने वाले किसी भी विज्ञापन सर्वर से विज्ञापनों का अनुरोध कर सकते हैं. साथ ही, आपके ऐप्लिकेशन में विज्ञापन चलाने की सुविधा को मैनेज कर सकते हैं. IMA DAI SDK की मदद से, ऐप्लिकेशन विज्ञापन और कॉन्टेंट वीडियो के लिए स्ट्रीम का अनुरोध करते हैं. यह कॉन्टेंट, वीओडी या लाइव कॉन्टेंट हो सकता है. इसके बाद, SDK टूल एक साथ वीडियो स्ट्रीम दिखाता है, ताकि आपको अपने ऐप्लिकेशन में विज्ञापन और कॉन्टेंट वीडियो के बीच स्विच करने की ज़रूरत न पड़े.
वह DAI समाधान चुनें जिसमें आपकी दिलचस्पी है
पॉड सर्विंग डीएआई
इस गाइड में, IMA DAI SDK को वीडियो प्लेयर ऐप्लिकेशन में इंटिग्रेट करने के बारे में बताया गया है. अगर आपको इंटिग्रेशन का पूरा सैंपल देखना है या उसे फ़ॉलो करना है, तो GitHub से PodServingExample डाउनलोड करें.
IMA डीएआई के बारे में खास जानकारी
IMA डीएआई को लागू करने के लिए, एसडीके के चार मुख्य कॉम्पोनेंट का इस्तेमाल किया जाता है. इस गाइड में इनके बारे में बताया गया है:
IMAAdDisplayContainer– यह एक कंटेनर ऑब्जेक्ट है, जो वीडियो प्लेबैक एलिमेंट के ऊपर होता है. इसमें विज्ञापन के यूज़र इंटरफ़ेस (यूआई) एलिमेंट होते हैं.IMAAdsLoader– यह एक ऐसा ऑब्जेक्ट है जो स्ट्रीम का अनुरोध करता है और स्ट्रीम के अनुरोध के जवाब वाले ऑब्जेक्ट से ट्रिगर होने वाले इवेंट को हैंडल करता है. आपको सिर्फ़ एक विज्ञापन लोडर को इंस्टैंशिएट करना चाहिए. इसका इस्तेमाल पूरे ऐप्लिकेशन में किया जा सकता है.IMAStreamRequest–IMAPodVODStreamRequestयाIMAPodStreamRequest.IMAStreamManager– यह एक ऐसा ऑब्जेक्ट है जो डाइनैमिक ऐड इंसर्शन (डीएआई) की स्ट्रीम और डीएआई बैकएंड के साथ इंटरैक्शन को मैनेज करता है. स्ट्रीम मैनेजर, ट्रैकिंग पिंग को भी मैनेज करता है. साथ ही, स्ट्रीम और विज्ञापन इवेंट को पब्लिशर को भेजता है.
इसके अलावा, पॉड सर्व करने वाली स्ट्रीम चलाने के लिए, कस्टम वीटीपी हैंडलर लागू करें. यह कस्टम वीटीपी हैंडलर, स्ट्रीम आईडी को आपके वीडियो टेक्निकल पार्टनर (वीटीपी) को भेजता है. साथ ही, यह ऐसी कोई भी अन्य जानकारी भेजता है जिसकी ज़रूरत वीटीपी को, कॉन्टेंट और स्टिच किए गए विज्ञापनों, दोनों को शामिल करने वाली स्ट्रीम मेनिफ़ेस्ट को वापस भेजने के लिए होती है. आपका वीटीपी, कस्टम वीटीपी हैंडलर को लागू करने के बारे में निर्देश देता है.
ज़रूरी शर्तें
शुरू करने से पहले, आपके पास ये चीज़ें होनी चाहिए:
- Xcode 13 या इसके बाद का वर्शन
- IMA SDK इंस्टॉल करने का तरीका:
- Swift Package Manager (सुझाया गया)
- CocoaPods
- iOS के लिए IMA SDK की डाउनलोड की गई कॉपी
आपको IMA SDK से स्ट्रीम का अनुरोध करने के लिए भी पैरामीटर की ज़रूरत होती है.
| लाइव स्ट्रीम के पैरामीटर | |
|---|---|
| नेटवर्क कोड |
आपके Ad Manager 360 खाते का नेटवर्क कोड. |
| कस्टम ऐसेट कुंजी |
यह कस्टम ऐसेट की है. इससे Ad Manager 360 में पॉड सर्विंग इवेंट की पहचान होती है. इसे आपका मेनिफ़ेस्ट मैनिपुलेटर या तीसरे पक्ष का पॉड सर्विंग पार्टनर बनाता है. |
| वीओडी स्ट्रीम के पैरामीटर | |
| नेटवर्क कोड |
आपके Ad Manager 360 खाते का नेटवर्क कोड. |
नया Xcode प्रोजेक्ट बनाना
Xcode में, Objective-C का इस्तेमाल करके एक नया iOS प्रोजेक्ट बनाएं. इसका नाम "PodServingExample" रखें.
Xcode प्रोजेक्ट में IMA DAI SDK जोड़ना
IMA SDK इंस्टॉल करने के लिए, अपनी पसंद का तरीका चुनें.
सुझाया गया तरीका: Swift Package Manager का इस्तेमाल करके एसडीके इंस्टॉल करना
Interactive Media Ads SDK, Swift Package Manager के साथ काम करता है. इसके लिए, SDK का वर्शन 3.18.4 या उसके बाद का वर्शन होना ज़रूरी है. Swift पैकेज इंपोर्ट करने के लिए, यह तरीका अपनाएं.
Xcode में, IMA DAI SDK Swift Package इंस्टॉल करें: File > Add Packages पर जाएं.
दिखने वाले प्रॉम्प्ट में, IMA DAI SDK Swift Package GitHub रिपॉज़िटरी खोजें:
https://github.com/googleads/swift-package-manager-google-interactive-media-ads-iosIMA DAI SDK के Swift पैकेज का वह वर्शन चुनें जिसका आपको इस्तेमाल करना है. नए प्रोजेक्ट के लिए, Up to Next Major Version का इस्तेमाल करें.
इसके बाद, Xcode आपके पैकेज की डिपेंडेंसी से जुड़ी समस्या को हल करता है और उन्हें बैकग्राउंड में डाउनलोड करता है. पैकेज डिपेंडेंसी जोड़ने के बारे में ज़्यादा जानने के लिए, Apple का लेख पढ़ें.
CocoaPods का इस्तेमाल करके IMA DAI SDK इंस्टॉल करना
CocoaPods, IMA DAI SDK इंस्टॉल करने के लिए Xcode प्रोजेक्ट का डिपेंडेंसी मैनेजर है. CocoaPods को इंस्टॉल करने या इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, CocoaPods का दस्तावेज़ देखें. CocoaPods इंस्टॉल करने के बाद, IMA डीएआई एसडीके इंस्टॉल करने के लिए इन निर्देशों का पालन करें:
PodServingExample.xcodeproj फ़ाइल वाली डायरेक्ट्री में, Podfile नाम की टेक्स्ट फ़ाइल बनाएं. इसके बाद, यह कॉन्फ़िगरेशन जोड़ें:
Podfile वाली डायरेक्ट्री से, यह कमांड चलाएं:
pod install --repo-update
एसडीके को मैन्युअल तरीके से डाउनलोड और इंस्टॉल करना
अगर आपको Swift Package Manager का इस्तेमाल नहीं करना है, तो IMA SDK को डाउनलोड करें और अपने प्रोजेक्ट में मैन्युअल तरीके से जोड़ें.
एक सामान्य वीडियो प्लेयर बनाना
अपने मेन व्यू कंट्रोलर में वीडियो प्लेयर लागू करें; AV प्लेयर को यूज़र इंटरफ़ेस व्यू में रैप करें. IMA SDK, विज्ञापन के यूज़र इंटरफ़ेस (यूआई) एलिमेंट दिखाने के लिए, यूज़र इंटरफ़ेस (यूआई) व्यू का इस्तेमाल करता है.
Objective-C
Swift
विज्ञापन लोडर को शुरू करना
अपने व्यू कंट्रोलर में IMA SDK इंपोर्ट करें. साथ ही, विज्ञापन लोडर और स्ट्रीम मैनेजर इवेंट को मैनेज करने के लिए, IMAAdsLoaderDelegate और IMAStreamManagerDelegate प्रोटोकॉल को अपनाएं.
IMA SDK के मुख्य कॉम्पोनेंट सेव करने के लिए, ये निजी प्रॉपर्टी जोड़ें:
IMAAdsLoader- यह कुकी, आपके ऐप्लिकेशन के पूरे लाइफ़टाइम के दौरान स्ट्रीम के अनुरोधों को मैनेज करती है.IMAAdDisplayContainer- यह विज्ञापन के यूज़र इंटरफ़ेस एलिमेंट को डालने और मैनेज करने का काम करता है.IMAAVPlayerVideoDisplay- यह IMA SDK और आपके मीडिया प्लेयर के बीच कम्यूनिकेट करता है. साथ ही, टाइम किए गए मेटाडेटा को मैनेज करता है.IMAStreamManager- यह स्ट्रीम के प्लेबैक को मैनेज करता है और विज्ञापन से जुड़े इवेंट ट्रिगर करता है.
व्यू लोड होने के बाद, विज्ञापन लोडर, विज्ञापन दिखाने वाला कंटेनर, और वीडियो डिसप्ले शुरू करें.
Objective-C
Swift
स्ट्रीम करने का अनुरोध करना
जब कोई उपयोगकर्ता 'चलाएं' बटन दबाता है, तब स्ट्रीम करने का नया अनुरोध करें.
लाइव स्ट्रीम के लिए, IMAPodStreamRequest क्लास का इस्तेमाल करें. वीओडी स्ट्रीम के लिए, IMAPodVODStreamRequest क्लास का इस्तेमाल करें.
स्ट्रीम के अनुरोध के लिए, आपके स्ट्रीम पैरामीटर के साथ-साथ विज्ञापन दिखाने वाले कंटेनर और वीडियो डिसप्ले का रेफ़रंस भी ज़रूरी होता है.
Objective-C
Swift
स्ट्रीम लोड होने के इवेंट को मॉनिटर करने की अनुमति
IMAAdsLoader क्लास, स्ट्रीम करने के अनुरोध के शुरू होने या पूरा न होने पर, IMAAdsLoaderDelegate तरीकों को कॉल करता है.
adsLoadedWithData डेलिगेट मेथड में, अपना IMAStreamManagerDelegate सेट करें.
स्ट्रीम आईडी को अपने कस्टम वीटीपी हैंडलर पर पास करें और स्ट्रीम मेनिफ़ेस्ट यूआरएल पाएं. लाइव स्ट्रीम के लिए, वीडियो डिसप्ले में मेनिफ़ेस्ट यूआरएल लोड करें और वीडियो चलाना शुरू करें. वीओडी स्ट्रीम के लिए, मेनिफ़ेस्ट यूआरएल को स्ट्रीम मैनेजर के loadThirdPartyStream तरीके पर पास करें. इस तरीके में, Ad Manager 360 से विज्ञापन इवेंट का डेटा पाने का अनुरोध किया जाता है. इसके बाद, मेनिफ़ेस्ट यूआरएल लोड किया जाता है और वीडियो चलाना शुरू किया जाता है.
failedWithErrorData डेलिगेट तरीके में, गड़बड़ी को लॉग करें. इसके अलावा, बैकअप स्ट्रीम को चलाया जा सकता है. DAI इस्तेमाल करने के सबसे सही तरीके देखें.
Objective-C
Swift
अपने कस्टम वीटीपी हैंडलर को लागू करना
कस्टम वीटीपी हैंडलर, दर्शक के स्ट्रीम आईडी को आपके वीडियो टेक्निकल पार्टनर (वीटीपी) को भेजता है. साथ ही, वीटीपी को ऐसी अन्य जानकारी भी भेजता है जिसकी ज़रूरत उसे स्ट्रीम मेनिफ़ेस्ट दिखाने के लिए होती है. इस मेनिफ़ेस्ट में कॉन्टेंट और स्टिच किए गए विज्ञापन, दोनों शामिल होते हैं. आपका वीटीपी, कस्टम वीटीपी हैंडलर को लागू करने के बारे में खास निर्देश देता है.
उदाहरण के लिए, वीटीपी में ऐसा मेनिफ़ेस्ट टेंप्लेट यूआरएल शामिल हो सकता है जिसमें मैक्रो [[STREAMID]] शामिल हो. इस उदाहरण में, हैंडलर मैक्रो की जगह स्ट्रीम आईडी डालता है और नतीजे के तौर पर मेनिफ़ेस्ट यूआरएल दिखाता है.
Objective-C
Swift
विज्ञापन इवेंट सुनना
IMAStreamManager, आपके ऐप्लिकेशन को स्ट्रीम इवेंट और गड़बड़ियां पास करने के लिए IMAStreamManagerDelegate तरीकों को कॉल करता है.
इस उदाहरण के लिए, मुख्य विज्ञापन इवेंट को कंसोल में लॉग करें:
Objective-C
Swift
IMA DAI ऐसेट मिटाना
स्ट्रीम का कॉन्टेंट चलाना बंद करने, विज्ञापन ट्रैकिंग बंद करने, और लोड की गई सभी स्ट्रीम ऐसेट को रिलीज़ करने के लिए, IMAStreamManager.destroy() को कॉल करें.
अपना ऐप्लिकेशन चलाएं. अगर यह ठीक से काम करता है, तो IMA SDK की मदद से Google DAI स्ट्रीम का अनुरोध करें और उन्हें चलाएं. SDK टूल की अन्य बेहतर सुविधाओं के बारे में जानने के लिए, बाईं ओर मौजूद साइडबार में दी गई अन्य गाइड देखें या GitHub पर मौजूद सैंपल देखें.