iOS के लिए Interactive Media Ads (IMA) SDK.
iOS के लिए IMA SDK में ओपन मेज़रमेंट (ओएम) SDK शामिल है. यह इंडस्ट्री स्टैंडर्ड है. इसे इंटरैक्टिव एडवरटाइज़िंग ब्यूरो (IAB) ने डेवलप किया है. इससे तीसरे पक्ष को विज्ञापन दिखने से जुड़े आंकड़े मेज़र करने और पुष्टि करने की सुविधा मिलती है. iOS के लिए IMA SDK का इस्तेमाल करने पर, इसमें शामिल OM SDK, VAST विज्ञापन टैग में मौजूद <AdVerifications>
टैग को अपने-आप पार्स करता है. साथ ही, ओएमआईडी एपीआई के ज़रिए, व्यूएबिलिटी डेटा को मेज़रमेंट करने वाली कंपनियों को भेजता है. IMA SDK, OM SDK v1.4, VAST 2+ पर GAM AdVerifications एक्सटेंशन, और VAST 4+ पर AdVerifications नोड के साथ काम करता है. ओपन मेज़रमेंट का फ़ायदा पाने के लिए, इन बातों का ध्यान रखें:
ओपन मेज़रमेंट का इस्तेमाल करने के लिए, आपके पास iOS के लिए IMA SDK का 3.9.0 या इसके बाद का वर्शन होना चाहिए.
अगर VAST 4.1+ का इस्तेमाल किया जा रहा है, तो विज्ञापनों को VAST 4.1 स्पेसिफ़िकेशन के मुताबिक,
<AdVerifications>
में ट्रैफ़िक के लिए कॉन्फ़िगर किया जाना चाहिए. अगर ऐसा नहीं किया जा रहा है, तो<Extension type="AdVerifications">
का इस्तेमाल किया जाना चाहिए.AdDisplayContainer
को किसी भी ओवरले (पारदर्शी या अपारदर्शी) से न ढकें. ऐसा इसलिए, क्योंकि ओएम SDK इन्हें रुकावट के तौर पर फ़्लैग करेगा और इससे विज्ञापन दिखने से जुड़े आंकड़े कम हो जाएंगे.
ज़रूरी शर्तें
- अगर आपके विज्ञापनों को Ad Manager के ज़रिए ट्रैफ़िक किया जाता है, तो अपने Ad Manager नेटवर्क के लिए, विज्ञापन दिखने की संभावना का आकलन करने वाली कंपनी को कॉन्फ़िगर करें. साथ ही, उस कंपनी को अपने लाइन आइटम के लिए असाइन करें.
टेस्ट करना
IMA SDK का इस्तेमाल करके ओपन मेज़रमेंट की जांच करने के लिए, ऊपर दिए गए SDK टूल के ज़रूरी वर्शन में से किसी एक का इस्तेमाल करें. साथ ही, टेस्ट विज्ञापन टैग का इस्तेमाल करें.
आपको अपने VAST रिस्पॉन्स में <AdVerifications>
दिखेगा.
वीडियो कंट्रोल ओवरले में आने वाली रुकावटों को रजिस्टर करता है
वीडियो कंट्रोल, जैसे कि रोकने के बटन या प्रोग्रेस बार, लोगों को वीडियो चलाने से जुड़ी ज़रूरी जानकारी और कार्रवाइयां उपलब्ध कराते हैं. मोबाइल पर, सटीक तरीके से टैप न कर पाने और उपयोगकर्ता की उम्मीदों की वजह से, मीडिया एलिमेंट पर बड़े और टच-फ़्रेंडली कंट्रोल रेंडर करना आम बात हो गई है. ये कंट्रोल आम तौर पर, उपयोगकर्ता के टैप करने पर दिखते हैं और फिर गायब हो जाते हैं. ये वीडियो चलाने के दौरान ज़्यादातर समय तक नहीं दिखते.
यहां YouTube ऐप्लिकेशन में रेंडर किए गए वीडियो कंट्रोल का उदाहरण दिया गया है:
IMA SDK का इस्तेमाल करते समय, ज़्यादातर पब्लिशर इन कंट्रोल को लागू करने के लिए, विज्ञापन दिखाने वाले कंटेनर के ऊपर एक व्यू जोड़ते हैं. यह व्यू ज़्यादातर पारदर्शी होता है. आम तौर पर, कंट्रोल इस व्यू के चाइल्ड एलिमेंट होते हैं. ये वीडियो प्लेयर को पूरी तरह से ढक देते हैं. इस पारदर्शी ओवरले का इस्तेमाल, टैप इवेंट को कैप्चर करने के लिए किया जाता है. इसके बाद, टैप करने पर उपयोगकर्ताओं को कंट्रोल रेंडर किए जाते हैं.
ओपन मेज़रमेंट SDK की मदद से विज्ञापन दिखने से जुड़े आंकड़ों का हिसाब लगाते समय, मीडिया एलिमेंट पर दिखने वाले सभी व्यू को रुकावटें माना जाता है. इससे विज्ञापन दिखने की दर कम हो जाती है. अगर पारदर्शी टैप ओवरले, पूरे विज्ञापन डिसप्ले कंटेनर के ऊपर मौजूद है, तो इन्वेंट्री को पूरी तरह से न दिखने वाली इन्वेंट्री के तौर पर एलान किया जा सकता है.
Open Measurement SDK, वीडियो कंट्रोल के लिए प्रावधान करता है. इन्हें "उपयोगकर्ता के लिए फ़ायदेमंद" रुकावटें माना जाता है, जो उपयोगकर्ता के अनुभव के लिए ज़रूरी होती हैं. एक बार जब किसी विज्ञापन को ब्रैंड के लिए सुरक्षित के तौर पर रजिस्टर कर लिया जाता है, तो इन कंट्रोल को विज्ञापन दिखने की संभावना के मेज़रमेंट से हटा दिया जाता है.
IAB और MRC के साथ काम करने वाला IMA SDK, Open Measurement SDK के साथ इन ओवरले को रजिस्टर करने के लिए एक एपीआई उपलब्ध कराता है. ये कंट्रोल, पूरी तरह से पारदर्शी ओवरले या छोटे बटन होने चाहिए. वीडियो कंट्रोल से जुड़े नहीं, बल्कि किसी अन्य तरह के व्यू रजिस्टर नहीं किए जाने चाहिए.
DO रजिस्टर करें | रजिस्टर न करें |
---|---|
|
|
यहां दिए गए सैंपल कोड में, विज्ञापन दिखाने वाले कंटेनर पर वीडियो कंट्रोल ओवरले रजिस्टर करने का तरीका बताया गया है:
UIView *myTransparentTapOverlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 250)];
UIButton *myPauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 10)];
// Substitute "myTransparentTapOverlay" and "myPauseButton" with the elements
// you want to register as video controls overlays.
// Make sure to register before ad playback starts.
IMAFriendlyObstruction *overlayObstruction =
[[IMAFriendlyObstruction alloc] initWithView:myTransparentTapOverlay
purpose:IMAFriendlyObstructionPurposeNotVisible
detailedReason:@"This overlay is transparent"];
IMAFriendlyObstruction *pauseButtonObstruction =
[[IMAFriendlyObstruction alloc] initWithView:myPauseButton
purpose:IMAFriendlyObstructionPurposeMediaControls
detailedReason:@"This is the video player pause button"];
[displayContainer registerFriendlyObstruction:overlayObstruction];
[displayContainer registerFriendlyObstruction:pauseButtonObstruction];
इनका इस्तेमाल करने के बाद, इन्हें हटाने के लिए यहां दिया गया तरीका अपनाएं:
[displayContainer unregisterAllFriendlyObstructions];