IMA डीएआई SDK टूल का इस्तेमाल शुरू करना

IMA SDK टूल की मदद से, अपनी वेबसाइटों और ऐप्लिकेशन में आसानी से मल्टीमीडिया विज्ञापन इंटिग्रेट किए जा सकते हैं. IMA SDK टूल, वीएएसटी (वीडियो विज्ञापन देने के लिए टेंप्लेट) का पालन करने वाले किसी भी विज्ञापन सर्वर से विज्ञापनों का अनुरोध कर सकते हैं. साथ ही, आपके ऐप्लिकेशन में विज्ञापन चलाने की सुविधा को मैनेज कर सकते हैं. IMA डीएआई SDK की मदद से, ऐप्लिकेशन विज्ञापन और कॉन्टेंट वीडियो के लिए स्ट्रीम का अनुरोध करते हैं. यह वीओडी या लाइव कॉन्टेंट हो सकता है. इसके बाद, SDK टूल जोड़ी गई वीडियो स्ट्रीम की सुविधा मिलती है, ताकि आपको विज्ञापन और कॉन्टेंट वीडियो के बीच स्विच करने को मैनेज न करना पड़े शामिल हैं.

अपनी पसंद का डीएआई सलूशन चुनें

डीएआई दिखाने वाला पॉड

IMA SDK आपकी वेबसाइटों और ऐप्लिकेशन में मल्टीमीडिया विज्ञापनों को इंटिग्रेट करना आसान बनाते हैं. IMA SDK टूल, वीएएसटी (वीडियो विज्ञापन देने के लिए टेंप्लेट) का पालन करने वाले किसी भी विज्ञापन सर्वर से विज्ञापनों का अनुरोध कर सकते हैं. साथ ही, आपके ऐप्लिकेशन में विज्ञापन चलाने की सुविधा को मैनेज कर सकते हैं. IMA डीएआई SDK की मदद से, ऐप्लिकेशन विज्ञापन और कॉन्टेंट वीडियो के लिए स्ट्रीम का अनुरोध करते हैं. यह वीओडी या लाइव कॉन्टेंट हो सकता है. इसके बाद, SDK टूल जोड़ी गई वीडियो स्ट्रीम की सुविधा मिलती है, ताकि आपको विज्ञापन और कॉन्टेंट वीडियो के बीच स्विच करने को मैनेज न करना पड़े शामिल हैं.

इस गाइड में IMA डीएआई का इस्तेमाल करके डीएआई पॉड सर्विंग स्ट्रीम चलाने का तरीका बताया गया है SDK टूल, जिसमें लाइव और वीओडी स्ट्रीम चलाने के लिए आसान वीडियो प्लेयर मौजूद है. अगर आपको इंटिग्रेशन के पूरे हो चुके सैंपल को देखना या उसके बारे में जानना है, तो पॉड सर्विंग का उदाहरण.

IMA डीएआई पॉड दिखाने की सुविधा के बारे में खास जानकारी

  • StreamRequest: यह एक ऐसा ऑब्जेक्ट है जो Google के विज्ञापन सर्वर को स्ट्रीम का अनुरोध करता है. पॉड दिखाने की सुविधा चालू करने के लिए, इसे ImaSdkFactory.createPodStreamRequest() या ImaSdkFactory.createPodVodStreamRequest() का इस्तेमाल करके बनाया जाना चाहिए. इन तरीकों के लिए, एक नेटवर्क कोड ज़रूरी है और createPodStreamRequest के लिए, कस्टम ऐसेट कुंजी और एपीआई पासकोड का होना ज़रूरी नहीं है. दोनों में अन्य वैकल्पिक पैरामीटर शामिल होते हैं.

  • StreamManager: एक ऑब्जेक्ट जो दोनों के बीच कम्यूनिकेशन मैनेज करता है वीडियो स्ट्रीम और IMA डीएआई SDK टूल का इस्तेमाल करना, जैसे कि ट्रैकिंग पिंग ट्रिगर करना और स्ट्रीम इवेंट को प्रकाशक को फ़ॉरवर्ड करने की सुविधा मिलती है.

ज़रूरी शर्तें

  • डीएआई विज्ञापनों के साथ वीडियो स्ट्रीम चलाने के लिए, IMA डीएआई SDK टूल के साथ पहले से सेट अप किया गया Android ऐप्लिकेशन. अगर आपके पास पहले से ऐसा कोई ऐप्लिकेशन नहीं है, तो हमारा सुझाव है कि Android डीएआई BasicExample प्रारंभ बिंदु. BasicExample में वह कोडबेस है जिसका रेफ़रंस इस गाइड में दिया गया है.

  • IMA डीआई का काम करने के लिए, आपके ऐप्लिकेशन के लिए VideoStreamPlayerCallback.onUserTextReceived() का इस्तेमाल करके आईडी3 इवेंट भेजना ज़रूरी है. पूरी सेवा वाले डीआई कोड स्निपेट का यह उदाहरण देखें.

पॉडकास्ट दिखाने के लिए वैरिएबल सेट अप करना

पॉड सर्विंग के लिए ज़रूरी सभी बदलाव SampleAdsWrapper.java में किए जाते हैं. कॉन्टेंट बनाने पहला कदम कॉन्सटैंट वैरिएबल को अपडेट करना है.

यहां विज्ञापनों के पॉड स्ट्रीम अनुरोध के लिए जोड़े जाने वाले कॉन्सटेंट दिए गए हैं:

  • STREAM_URL: सिर्फ़ लाइव स्ट्रीम के लिए इस्तेमाल किया गया - वीडियो स्ट्रीम का यूआरएल: पॉड सर्विंग का इस्तेमाल करके, मेनिफ़ेस्ट मैनेज करने वाले या तीसरे पक्ष के पार्टनर को जोड़ें. इसे ऐसा होना चाहिए इसके लिए, आपको पहले IMA डीएआई SDK टूल से मिला स्ट्रीम आईडी डालना होगा कोई अनुरोध करो. इस मामले में, स्ट्रीम के यूआरएल में एक प्लेसहोल्डर शामिल होता है, "[[STREAMID]]" को स्ट्रीम आईडी से बदल दिया जाता है. अनुरोध.

  • NETWORK_CODE: आपके Ad Manager 360 खाते का नेटवर्क कोड.

  • CUSTOM_ASSET_KEY: सिर्फ़ लाइव स्ट्रीम के लिए इस्तेमाल किया जाता है - यह कस्टम एसेट की वह कुंजी है जो Ad Manager 360 में आपके पॉड को दिखाने वाले इवेंट की पहचान करती है. इसे इनके ज़रिए बनाया जा सकता है: मेनिफ़ेस्ट में बदलाव करने वाले या तीसरे पक्ष के पॉड सर्विंग पार्टनर को सबमिट करने की अनुमति दें.

  • API_KEY: सिर्फ़ लाइव स्ट्रीम के लिए इस्तेमाल किया जाता है - यह एक वैकल्पिक एपीआई पासकोड है. IMA डीएआई SDK टूल से स्ट्रीम आईडी पाने के लिए, इसकी ज़रूरत पड़ सकती है.

Android DAI BasicExample को अलग-अलग तरह की स्ट्रीम चलाने के लिए डिज़ाइन किया गया है. हालांकि, पॉड सर्विंग के लिए, इसे सिर्फ़ एक स्ट्रीम चलाने के लिए सेट अप किया गया है. उदाहरण के वैरिएबल सेक्शन में बदलाव करें, ताकि वह इनसे मैच कर सके:

/** This class adds ad-serving support to Sample HlsVideoPlayer */
public class SampleAdsWrapper
        implements AdEvent.AdEventListener, AdErrorEvent.AdErrorListener, AdsLoader.AdsLoadedListener {

  // Podserving Stream Constants.
  private static final String STREAM_URL =
          "https://encodersim.sandbox.google.com/masterPlaylist/9c654d63-5373-4673-8c8d-6d92b66b9d46/" +
          "master.m3u8?gen-seg-redirect=true&network=51636543&event=google-sample" +
          "&pids=devrel4628000,devrel896000,devrel3528000,devrel1428000,devrel2628000,devrel1928000" +
          "&seg-host=dai.google.com&stream_id=[[STREAMID]]";
  private static final String NETWORK_CODE = "51636543";
  private static final String CUSTOM_ASSET_KEY = "google-sample";
  private static final String API_KEY = "";

  private static final String PLAYER_TYPE = "DAISamplePlayer";

  /** Log interface, so we can output the log commands to the UI or similar. */
  public interface Logger {

...

पॉड विज्ञापन दिखाने की सुविधा चालू करने के लिए, लाइव या वीओडी (वीडियो ऑन डिमांड) पॉड स्ट्रीम का अनुरोध करें

लाइव स्ट्रीम पॉड दिखाना

buildStreamRequest() का तरीका हटाएं. इसका इस्तेमाल, अलग-अलग तरह की स्ट्रीम बनाने के बीच स्विच करने के लिए किया जाता था. इसके बाद, विज्ञापन का अनुरोध दिखाने वाला लाइव पॉड बनाने के लिए, requestAndPlayAds() को कॉल पर बदलेंImaSdkFactory.createPodStreamRequest(). आखिर में, AdsLoader.requestStream() का इस्तेमाल करके स्ट्रीम का अनुरोध करें.

public void requestAndPlayAds() {
  StreamRequest request =
      sdkFactory.createPodStreamRequest(NETWORK_CODE, CUSTOM_ASSET_KEY, API_KEY);
  request.setFormat(StreamFormat.HLS);

  adsLoader.addAdErrorListener(this);
  adsLoader.addAdsLoadedListener(this);
  adsLoader.requestStream(request);
}

वीओडी स्ट्रीम पॉड दिखाना

वह तरीका हटाएं जिसका इस्तेमाल buildStreamRequest() के बीच स्विच करने के लिए किया जा रहा था जिससे अलग-अलग तरह की स्ट्रीम बनाई जा सकती हैं. इसके बाद, विज्ञापन अनुरोध दिखाने वाला वीओडी पॉड बनाने के लिए, requestAndPlayAds() को कॉलImaSdkFactory.createPodVodStreamRequest() में बदलें. आखिर में, AdsLoader.requestStream() का इस्तेमाल करके स्ट्रीम का अनुरोध करें.

public void requestAndPlayAds() {
  StreamRequest request =
      sdkFactory.createPodVodStreamRequest(NETWORK_CODE);
  request.setFormat(StreamFormat.HLS);

  adsLoader.addAdErrorListener(this);
  adsLoader.addAdsLoadedListener(this);
  adsLoader.requestStream(request);
}

स्ट्रीम के यूआरएल में बदलाव करना और उसे सेट करना

लाइव स्ट्रीम पॉड दिखाना

स्ट्रीम आईडी पाने के लिए, StreamManager.getStreamId() को कॉल करें. इसके बाद, यह ज़रूरी है कि "[[STREAMID]]" की जगह STEAM_URL में डाला गया. यह बदलाव करने के बाद, videoPlayer.setStreamUrl() का इस्तेमाल करके नया स्ट्रीम यूआरएल सेट किया जा सकता है.

@Override
public void onAdsManagerLoaded(AdsManagerLoadedEvent event) {
  streamManager = event.getStreamManager();
  streamManager.addAdErrorListener(this);
  streamManager.addAdEventListener(this);

  // To enable streams
  String streamID = streamManager.getStreamId();
  String streamUrl = STREAM_URL.replace("[[STREAMID]]", streamID);

  streamManager.init();

  videoPlayer.setStreamUrl(streamUrl);
  videoPlayer.play();
}

वीओडी (वीडियो ऑन डिमांड) स्ट्रीम पॉड सर्विंग

स्ट्रीम आईडी पाने के लिए, StreamManager.getStreamId() पर कॉल करें. इसके बाद, अपने वीडियो टेक्नोलॉजी पार्टनर (वीटीपी) से स्ट्रीम यूआरएल का अनुरोध करें. इसके बाद, IMA को स्ट्रीम का यूआरएल और आपके टीवीपी से मिले सबटाइटल लोड करने के लिए, StreamManager.loadThirdPartyStream() को कॉल करें.

@Override
public void onAdsManagerLoaded(AdsManagerLoadedEvent event) {
  streamManager = event.getStreamManager();
  streamManager.addAdErrorListener(this);
  streamManager.addAdEventListener(this);

  // To enable streams
  String streamID = streamManager.getStreamId();
  // 'vtpInterface' is a place holder for your own video technology partner
  // (VTP) API calls.
  String streamUrl = vtpInterface.requestStreamURL(streamID);

  streamManager.init();

  // Pass any subtitles returned by your VTP in this step as well.
  streamManager.loadThirdPartyStream(streamUrl, subtitles);
}

पॉड सर्विंग की सुविधा चालू होने पर, IMA इन्हें कॉल नहीं करता VideoStreamPlayer.loadUrl(), ताकि आप इनमें से कोई भी कॉल निकाल सकें इससे videoPlayer.setStreamUrl() और videoPlayer.play() मिले हैं.

हो गया! इस समय, पॉड सर्विंग स्ट्रीम में विज्ञापनों का अनुरोध किया जा रहा है और उन्हें दिखाया जा रहा है: IMA डीएआई SDK टूल. Android SDK के इस्तेमाल के अन्य उदाहरण देखने के लिए, GitHub पर सैंपल देखें.