IMA SDK की मदद से, अपनी वेबसाइटों और ऐप्लिकेशन में मल्टीमीडिया विज्ञापन आसानी से इंटिग्रेट किए जा सकते हैं. IMA SDK, VAST के साथ काम करने वाले किसी भी विज्ञापन सर्वर से विज्ञापनों का अनुरोध कर सकते हैं. साथ ही, आपके ऐप्लिकेशन में विज्ञापन चलाने की सुविधा को मैनेज कर सकते हैं. IMA DAI SDK की मदद से, ऐप्लिकेशन विज्ञापन और कॉन्टेंट वीडियो के लिए स्ट्रीम का अनुरोध करते हैं. यह कॉन्टेंट, वीओडी या लाइव कॉन्टेंट में से कोई भी हो सकता है. इसके बाद, SDK टूल एक साथ वीडियो स्ट्रीम दिखाता है, ताकि आपको अपने ऐप्लिकेशन में विज्ञापन और कॉन्टेंट वीडियो के बीच स्विच करने की ज़रूरत न पड़े.
वह DAI समाधान चुनें जिसमें आपकी दिलचस्पी है
पॉड सर्विंग डीएआई
IMA SDK की मदद से, अपनी वेबसाइटों और ऐप्लिकेशन में मल्टीमीडिया विज्ञापन आसानी से इंटिग्रेट किए जा सकते हैं. IMA SDK, VAST के साथ काम करने वाले किसी भी विज्ञापन सर्वर से विज्ञापनों का अनुरोध कर सकते हैं. साथ ही, आपके ऐप्लिकेशन में विज्ञापन चलाने की सुविधा को मैनेज कर सकते हैं. IMA DAI SDK की मदद से, ऐप्लिकेशन विज्ञापन और कॉन्टेंट वीडियो के लिए स्ट्रीम का अनुरोध करते हैं. यह कॉन्टेंट, वीओडी या लाइव कॉन्टेंट में से कोई भी हो सकता है. इसके बाद, SDK टूल एक साथ वीडियो स्ट्रीम दिखाता है, ताकि आपको अपने ऐप्लिकेशन में विज्ञापन और कॉन्टेंट वीडियो के बीच स्विच करने की ज़रूरत न पड़े.
इस गाइड में, लाइव और वीओडी स्ट्रीम चलाने के लिए, वीडियो प्लेयर के साथ IMA DAI SDK का इस्तेमाल करके, डीएआई पॉड सर्विंग स्ट्रीम चलाने का तरीका बताया गया है. पूरे किए गए सैंपल इंटिग्रेशन को देखने या उसका पालन करने के लिए, पॉड सर्व करने का उदाहरण डाउनलोड करें.
IMA DAI Pod Serving की खास जानकारी
StreamRequest
: यह एक ऐसा ऑब्जेक्ट है जो Google के विज्ञापन सर्वर को स्ट्रीम के अनुरोध के बारे में बताता है. पॉड सर्व करने की सुविधा चालू करने के लिए, इसेImaSdkFactory.createPodStreamRequest()
याImaSdkFactory.createPodVodStreamRequest()
का इस्तेमाल करके बनाया जाना चाहिए. इन तरीकों के लिए नेटवर्क कोड की ज़रूरत होती है. साथ ही,createPodStreamRequest
के लिए कस्टम ऐसेट कुंजी और एपीआई पासकोड की ज़रूरत होती है. हालांकि, एपीआई पासकोड देना ज़रूरी नहीं है. इन दोनों में अन्य वैकल्पिक पैरामीटर भी शामिल हैं.StreamManager
: यह एक ऐसा ऑब्जेक्ट है जो वीडियो स्ट्रीम और IMA DAI SDK के बीच कम्यूनिकेशन को मैनेज करता है. जैसे, ट्रैकिंग पिंग को ट्रिगर करना और स्ट्रीम इवेंट को पब्लिशर को फ़ॉरवर्ड करना.
ज़रूरी शर्तें
ऐसा Android ऐप्लिकेशन जो IMA DAI SDK टूल के साथ पहले से ही सेट अप हो, ताकि DAI विज्ञापनों के साथ वीडियो स्ट्रीम चलाई जा सकें. अगर आपके पास ऐसा कोई ऐप्लिकेशन नहीं है, तो हमारा सुझाव है कि आप Android DAI BasicExample का इस्तेमाल करें. BasicExample में, इस गाइड में रेफ़र किया गया कोडबेस है.
IMA DAI के काम करने के लिए, आपके ऐप्लिकेशन को
VideoStreamPlayerCallback.onUserTextReceived()
का इस्तेमाल करके ID3 इवेंट भेजने होंगे. फ़ुल सर्विस डीएआई कोड स्निपेट का उदाहरण देखें.
पॉडकास्ट दिखाने के लिए वैरिएबल सेट अप करना
पॉड सर्व करने के लिए ज़रूरी सभी बदलाव, SampleAdsWrapper.java में किए जाते हैं. पहला चरण, कॉन्स्टेंट वैरिएबल को अपडेट करना है.
यहां विज्ञापन पॉड स्ट्रीम के अनुरोध के लिए, जोड़े जाने वाले कॉन्स्टेंट दिए गए हैं:
STREAM_URL
: सिर्फ़ लाइव स्ट्रीम के लिए इस्तेमाल किया जाता है - यह वीडियो स्ट्रीम का वह यूआरएल होता है जिसे पॉड सर्विंग का इस्तेमाल करके, आपके मेनिफ़ेस्ट मैनिपुलेटर या तीसरे पक्ष के पार्टनर ने उपलब्ध कराया है. अनुरोध करने से पहले, आपको IMA DAI SDK से मिला स्ट्रीम आईडी डालना होगा. इस मामले में, स्ट्रीम के यूआरएल में एक प्लेसहोल्डर,"[[STREAMID]]"
शामिल होता है. अनुरोध करने से पहले, इसे स्ट्रीम आईडी से बदल दिया जाता है.NETWORK_CODE
: यह आपके Ad Manager 360 खाते का नेटवर्क कोड है.CUSTOM_ASSET_KEY
: सिर्फ़ लाइव स्ट्रीम के लिए इस्तेमाल किया जाता है - यह कस्टम ऐसेट कुंजी है. इससे Ad Manager 360 में, पॉड सर्विंग इवेंट की पहचान की जाती है. इसे आपका मेनिफ़ेस्ट मैनिपुलेटर या तीसरे पक्ष का पॉड सर्विंग पार्टनर बना सकता है.API_KEY
: सिर्फ़ लाइव स्ट्रीम के लिए इस्तेमाल किया जाता है - यह एक वैकल्पिक एपीआई पासकोड है. IMA DAI SDK से स्ट्रीम आईडी पाने के लिए, इसकी ज़रूरत पड़ सकती है.
Android DAI BasicExample को अलग-अलग तरह की स्ट्रीम चलाने के लिए डिज़ाइन किया गया है. हालांकि, पॉड सर्विंग के लिए इसे सिर्फ़ एक स्ट्रीम चलाने के लिए सेट अप किया गया है. उदाहरण के वैरिएबल सेक्शन में बदलाव करके, उसे यहां दिए गए सेक्शन से मैच करें:
पॉड सर्विंग की सुविधा चालू करने के लिए, लाइव या वीओडी पॉड स्ट्रीम का अनुरोध करें
लाइव स्ट्रीम के दौरान पॉड सर्व करना
स्ट्रीम के अलग-अलग टाइप के बीच स्विच करने के लिए इस्तेमाल किए गए buildStreamRequest()
तरीके को हटा दिया गया है. इसके बाद, लाइव पॉड सर्विंग विज्ञापन का अनुरोध बनाने के लिए, requestAndPlayAds()
को कॉल करें
ImaSdkFactory.createPodStreamRequest()
में बदलाव करें.
वीओडी स्ट्रीम के लिए पॉड सर्वर करना
स्ट्रीम के अलग-अलग टाइप के बीच स्विच करने के लिए इस्तेमाल किए गए buildStreamRequest()
तरीके को हटा दिया गया है. इसके बाद, requestAndPlayAds()
में बदलाव करके ImaSdkFactory.createPodVodStreamRequest()
को कॉल करें, ताकि वीओडी पॉड दिखाने वाले विज्ञापन का अनुरोध किया जा सके.
स्ट्रीम के अनुरोध का इंस्टेंस बनाने के बाद, AdsLoader.requestStream()
का इस्तेमाल करके स्ट्रीम का अनुरोध करें:
स्ट्रीम के यूआरएल में बदलाव करना और उसे सेट करना
लाइव स्ट्रीम के दौरान पॉड सर्व करना
स्ट्रीम आईडी पाने के लिए, StreamManager.getStreamId()
वाले तरीके को कॉल करें. इसे STEAM_URL
में "[[STREAMID]]"
की जगह पर डालना होगा. यह बदलाव करने के बाद, videoPlayer.setStreamUrl()
तरीके का इस्तेमाल करके नया स्ट्रीम यूआरएल सेट करें. इसके बाद, स्ट्रीम चलाने के लिए videoPlayer.play()
तरीके को कॉल करें.
वीओडी स्ट्रीम के लिए पॉड सर्वर करना
- स्ट्रीम आईडी पाने के लिए,
StreamManager.getStreamId()
वाले तरीके को कॉल करें. - अपने वीडियो टेक्नोलॉजी पार्टनर (वीटीपी) से स्ट्रीम के यूआरएल का अनुरोध करें.
- वीटीपी से यूआरएल मिलने के बाद, स्ट्रीम लोड करने के लिए यूआरएल के साथ
StreamManager.loadThirdPartyStream()
तरीके को कॉल करें. साथ ही, वीटीपी से मिले किसी भी सबटाइटल को कॉल करें.
VOD पॉड दिखाने के अनुरोधों के लिए, IMA VideoStreamPlayer.loadUrl()
कॉलबैक को तब कॉल करता है, जब स्ट्रीम लोड हो जाती है. स्ट्रीम का कॉन्टेंट चलाने के लिए, VideoStreamPlayer.loadUrl()
कॉलबैक में videoPlayer.setStreamUrl()
और videoPlayer.play()
कॉल जोड़ें:
IMA DAI ऐसेट मिटाना
IMA DAI SDK की मदद से, पॉड सर्विंग स्ट्रीम में विज्ञापनों का अनुरोध करने और उन्हें दिखाने की प्रोसेस पूरी होने के बाद, हमारा सुझाव है कि पॉड सर्विंग सेशन पूरा होने के बाद, सभी संसाधनों को हटा दें. स्ट्रीम का प्लेबैक रोकने, विज्ञापन की सभी ट्रैकिंग रोकने, और लोड की गई सभी स्ट्रीम ऐसेट को रिलीज़ करने के लिए, StreamManager.destroy()
को कॉल करें.
Android SDK के इस्तेमाल के अन्य उदाहरण देखने के लिए, GitHub पर सैंपल देखें.