iOS-এর জন্য IMA SDK-তে
Open Measurement (OM) SDK অন্তর্ভুক্ত থাকে,
এটি হল
ইন্ট্যার্যাক্টিভ অ্যাডভার্টাইজিং ব্যুরো (IAB) দ্বারা ডেভেলপ করা একটি ইন্ডাস্ট্রি স্ট্যান্ডার্ড,
যা থার্ড-পার্টি ভিউয়েবিলিটি ও যাচাইকরণ পরিমাপ চালু করে। iOS-এর জন্য IMA SDK ব্যবহার করার সময়, অন্তর্ভুক্ত OM SDK অটোমেটিক
VAST বিজ্ঞাপন ট্যাগের মধ্যে থাকা <AdVerifications> ট্যাগ পার্স করে এবং OMID API ব্যবহার করে
নির্দিষ্ট পরিমাপকারী ভেন্ডরকে ভিউঅ্যাবিলিটি ডেটা পাঠায়। IMA SDK-তে
OM SDK v1.6, VAST 2+-এ GAM AdVerifications এক্সটেনশন,
এবং VAST 4+-এ AdVerifications নোড কাজ করে। ওপেন মেজারমেন্টের সুবিধা নিতে,
নিচে উল্লেখ করা বিষয়গুলি মনে রাখুন:
ওপেন মেজারমেন্ট ব্যবহার করতে হলে আপনার কাছে iOS-এর জন্য IMA SDK-এর 3.9.0 বা তার পরবর্তী ভার্সন থাকতে হবে।
VAST 4.1 স্পেসিফিকেশন অনুযায়ী VAST 4.1+ ব্যবহার করলে, VAST-এ
<AdVerifications>ট্রাফিক করার জন্য বিজ্ঞাপন কনফিগার করতে হবে; অন্যথায়,<Extension type="AdVerifications">ব্যবহার করতে হবে।AdDisplayContainer-এর উপর কোনও ওভারলে (স্বচ্ছ বা অস্বচ্ছ) দেবেন না । OM SDK এগুলিকে বাধা হিসেবে ফ্ল্যাগ করবে এবং ভিউয়েবিলিটি কমে যাবে।
পূর্বশর্ত
- Ad Manager-এর মাধ্যমে আপনার বিজ্ঞাপন ট্রাফিক করা হলে, আপনার Ad Manager নেটওয়ার্কের জন্য ভিউয়েবিলিটি প্রোভাইডার কনফিগার করুন এবং আপনার লাইন আইটেমে সেই ভিউয়েবিলিটি প্রোভাইডার অ্যাসাইন করুন।
পরীক্ষা করা
IMA SDK ব্যবহার করে ওপেন মেজারমেন্ট পরীক্ষা করতে, IMA-এর এমন একটি ভার্সন ব্যবহার করুন যা OM SDK-এর সাথে কাজ করে এবং পরীক্ষামূলক বিজ্ঞাপন ট্যাগ ব্যবহার করে।
আপনার VAST উত্তরে <AdVerifications> ফেরত পাঠানো হয়েছে কিনা তা দেখুন।
ভিডিও কন্ট্রোল ওভারলেতে বাধা রেজিস্টার করা
ভিডিও কন্ট্রোল, যেমন পজ বোতাম বা প্রোগ্রেস বার, ব্যবহারকারীদের প্লেব্যাক সংক্রান্ত প্রয়োজনীয় তথ্য ও অ্যাকশন প্রদান করে। মোবাইলে, ভুলবশত ট্যাপ করা এবং ব্যবহারকারীর প্রত্যাশার কারণে মিডিয়া এলিমেন্টের উপর বড়, টাচ-ফ্রেন্ডলি কন্ট্রোল রেন্ডার করা সাধারণ প্র্যাক্টিস হয়ে গেছে। এইসব কন্ট্রোল সাধারণত ব্যবহারকারীর ট্যাপে ফেড-ইন ও ফেড-আউট হয় এবং প্লেব্যাকের বেশিরভাগ সময় দেখা যায় না।
ওভারলে করা ভিডিও কন্ট্রোলের উদাহরণ দেখতে, YouTube অ্যাপ রেন্ডারিং কন্ট্রোলের এই ছবি দেখুন:

IMA SDK ব্যবহার করার সময়, বেশিরভাগ প্রকাশক বিজ্ঞাপন ডিসপ্লে কন্টেনারের উপরে একটি ভিউ যোগ করে এইসব কন্ট্রোল প্রয়োগ করেন, যা বেশিরভাগ ক্ষেত্রে স্বচ্ছ হয়। সাধারণত, কন্ট্রোলগুলি এই ভিউয়ের চাইল্ড এলিমেন্ট যা নিচের ভিডিও প্লেয়ারকে সম্পূর্ণভাবে আড়াল করে। ট্যাপ ইভেন্ট ক্যাপচার করতে এই স্বচ্ছ ওভারলে ব্যবহার করা হয় এবং তারপরে ট্যাপ করা হলে ব্যবহারকারীদের কন্ট্রোল রেন্ডার করা হয়।
Open Measurement SDK ব্যবহার করে বিজ্ঞাপন ভিউয়েবিলিটি গণনা করার সময়, মিডিয়া এলিমেন্টের উপর ওভারলে করা সব ভিউকে বাধা হিসেবে বিবেচনা করা হয় এবং ভিউয়েবিলিটি রেট কমে যায়। বিজ্ঞাপন দেখানোর সম্পূর্ণ কন্টেনারের উপরে ট্রান্সপারেন্ট ট্যাপ ওভারলে থাকলে, ইনভেনটরিকে সম্পূর্ণভাবে দেখা যাচ্ছে না বলে ঘোষণা করা সম্ভব।
Open Measurement SDK, ভিডিও কন্ট্রোলকে "বন্ধুত্বপূর্ণ" বাধা হিসেবে বিবেচনা করার ব্যবস্থা করে, যা ব্যবহারকারীর অভিজ্ঞতার জন্য অপরিহার্য। ফ্রেন্ডলি হিসেবে রেজিস্টার করা হলে, এই কন্ট্রোলগুলি বিজ্ঞাপন ভিউয়েবিলিটি পরিমাপ থেকে বাদ দেওয়া হয়।
IAB এবং MRC-এর সহায়তায়, IMA SDK, Open Measurement SDK-এর সাথে এইসব ওভারলে রেজিস্টার করার জন্য একটি API নিয়ে এসেছে। এইসব কন্ট্রোল সম্পূর্ণ স্বচ্ছ ওভারলে বা ছোট বোতাম হতে হবে। ভিডিও কন্ট্রোল সম্পর্কিত নয় এমন অন্য কোনও ভিউ রেজিস্টার করা যাবে না।
| কী কী করবেন | রেজিস্টার করবেন না |
|---|---|
|
|
বিজ্ঞাপন ডিসপ্লে কন্টেনারে কীভাবে ভিডিও কন্ট্রোল ওভারলে রেজিস্টার করতে হয় তা নিম্নলিখিত নমুনা কোড থেকে বোঝা যায়:
UIView *myTransparentTapOverlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 250)];
UIButton *myPauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 10)];
// Replace myTransparentTapOverlay and myPauseButton with your own elements
// that function as video control 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];
এগুলি ব্যবহার করা হয়ে গেলে, নিম্নলিখিত পদ্ধতি ব্যবহার করে এই বাধাগুলি সরানো যেতে পারে:
Objective-C
- (void)unregisterObstructionsForContainer:(IMAAdDisplayContainer *)displayContainer {
// This removes all previously registered friendly obstructions from the container.
[displayContainer unregisterAllFriendlyObstructions];
}
Swift
func unregisterObstructions(displayContainer: IMAAdDisplayContainer) {
// This removes all previously registered friendly obstructions from the container.
displayContainer.unregisterAllFriendlyObstructions()
}