HLS ইন্টারস্টিশিয়ালস স্পেসিফিকেশন ভিডিও বা অডিও স্ট্রিমে বিজ্ঞাপন শিডিউল এবং সন্নিবেশ করার একটি নমনীয় উপায় প্রবর্তন করে। ক্লায়েন্ট-সাইড পদ্ধতির সাহায্যে, AVPlayerInterstitialEvent ক্লাস তৈরি করে আপনার অ্যাপ্লিকেশন কখন বিজ্ঞাপন বিরতি অনুরোধ করবে এবং চালাবে তার উপর সম্পূর্ণ নিয়ন্ত্রণ নেয়। এই পদ্ধতির জন্য কন্টেন্ট স্ট্রিম ম্যানিফেস্টে EXT-X-DATERANGE ট্যাগের প্রয়োজন হয় না। ক্লায়েন্ট-সাইড HLS ইন্টারস্টিশিয়ালস আপনাকে স্ট্রিম ম্যানিফেস্ট বা মিডিয়া ফাইল পরিবর্তন না করেই যেকোনো কন্টেন্টে গতিশীলভাবে বিজ্ঞাপন সন্নিবেশ করতে দেয়।
এই নির্দেশিকাটিতে ইন্টারেক্টিভ মিডিয়া বিজ্ঞাপন (IMA) SDK কে একটি ভিডিও প্লেয়ার অ্যাপের সাথে একীভূত করার কথা বলা হয়েছে যা একটি সার্ভার নির্দেশিত বিজ্ঞাপন সন্নিবেশ (SGAI) লাইভস্ট্রিম সেশন তৈরি করে এবং ক্লায়েন্ট-সাইড ইন্টারস্টিশিয়াল সময়সূচী নির্ধারণ করে। আরও তথ্যের জন্য, সার্ভার নির্দেশিত DAI দেখুন।
পূর্বশর্ত
শুরু করার আগে, আপনার নিম্নলিখিতগুলি প্রয়োজন:
ইউজার ইন্টারফেসের জন্য
Storyboardব্যবহার করে একটি নতুন এক্সকোড প্রকল্প। আরও তথ্যের জন্য, একটি অ্যাপের জন্য একটি এক্সকোড প্রকল্প তৈরি করা দেখুন।গুগল আইএমএ এসডিকে। আরও তথ্যের জন্য, ডিএআই-এর জন্য আইএমএ এসডিকে সেট আপ করুন দেখুন।
আপনার DAI লাইভস্ট্রিম অনুরোধের জন্য নিম্নলিখিত প্যারামিটারগুলি:
-
NETWORK_CODE: আপনার Google বিজ্ঞাপন ম্যানেজার নেটওয়ার্ক কোড। -
CUSTOM_ASSET_KEY: আপনার কাস্টম স্ট্রিং যা DAI লাইভস্ট্রিম ইভেন্ট শনাক্ত করে। লাইভস্ট্রিম ইভেন্টে অবশ্যই Pod সার্ভিং ম্যানিফেস্ট DAI টাইপ থাকতে হবে।
-
স্টোরিবোর্ড কনফিগার করুন
আপনার iPhone.storyboard ফাইলে, নিম্নলিখিতগুলি করুন:
- ভিডিও প্লেয়ার এবং বিজ্ঞাপন UI এর জন্য একটি কন্টেইনার হিসেবে একটি
UIViewঅবজেক্ট তৈরি করুন। -
UIViewঅবজেক্টের সাথে সংযোগ স্থাপনের জন্যViewControllerক্লাসের একটিadUIViewপ্রোপার্টি তৈরি করুন। -
adUIViewঅবজেক্টে, প্লে বোতাম হিসেবে কাজ করার জন্য একটিUIButtonতৈরি করুন। -
UIButtonঅবজেক্টের সাথে সংযোগ স্থাপনের জন্যViewControllerক্লাসের একটিplayButtonপ্রোপার্টি এবং ব্যবহারকারীর ট্যাপ পরিচালনা করার জন্য একটিonPlayButtonTouchফাংশন তৈরি করুন।
একটি বিজ্ঞাপন লোডার শুরু করুন
প্রধান ভিউ কন্ট্রোলারের viewDidLoad ইভেন্টে, নিম্নলিখিতগুলি করুন:
-
AVPlayerএবংAVPlayerLayerক্লাস ব্যবহার করে একটি ভিডিও প্লেয়ার সেট আপ করুন। -
IMAAdDisplayContainerএবংIMAAVPlayerVideoDisplayঅবজেক্ট তৈরি করুন। বিজ্ঞাপন প্রদর্শনের কন্টেইনারটি IMA DAI SDK-এর জন্যadUIViewনির্দিষ্ট করে বিজ্ঞাপন UI সাবভিউ সন্নিবেশ করানোর জন্য। ভিডিও প্রদর্শনের অবজেক্টটি IMA DAI SDK-এর বিজ্ঞাপন লজিক এবং AVFoundation প্লেব্যাক সিস্টেমের মধ্যে একটি সেতু হিসেবে কাজ করে, ভিডিও বিজ্ঞাপন প্লেব্যাক ট্র্যাক করে। - বিজ্ঞাপন প্লেব্যাক এবং বিজ্ঞাপন UI স্থানীয়করণ সেটিংস দিয়ে
IMAAdsLoaderঅবজেক্টটি শুরু করুন।
নিচের উদাহরণটি একটি খালি IMASettings অবজেক্ট সহ একটি বিজ্ঞাপন লোডার শুরু করে:
একটি স্ট্রিম অনুরোধ করুন
কন্টেন্ট স্ট্রিমের জন্য বিজ্ঞাপনের অনুরোধ করতে, একটি IMAPodStreamRequest অবজেক্ট তৈরি করুন এবং এটি আপনার IMAAdsLoader ইনস্ট্যান্সে পাস করুন। ঐচ্ছিকভাবে, আপনার স্ট্রিমের জন্য DAI বিকল্প এবং টার্গেটিং প্যারামিটার সরবরাহ করার জন্য adTagParameters প্রপার্টি সেট করুন।
এই উদাহরণে viewDidAppear ইভেন্টে loadAdStream পদ্ধতিটি কল করা হয়েছে:
আপনার প্রোডাকশন অ্যাপে, ব্যবহারকারী কোনও কন্টেন্ট স্ট্রিম নির্বাচন করার পরে loadAdStream পদ্ধতিতে কল করুন।
স্ট্রিম লোড ইভেন্টগুলি পরিচালনা করুন
স্ট্রিম অনুরোধের সাফল্য বা ব্যর্থতা পরিচালনা করার জন্য IMAAdsLoaderDelegate প্রোটোকল বাস্তবায়ন করুন:
- সফল হলে, আপনি
IMAStreamManagerধারণকারী একটিIMAAdsLoadedDataঅবজেক্ট পাবেন। বর্তমান DAI সেশনের জন্যstreamManager.streamIdমান সংরক্ষণ করুন। - ব্যর্থ হলে, ত্রুটিটি লগ করুন।
নিম্নলিখিত উদাহরণটি স্ট্রিম লোডেড ইভেন্ট পরিচালনা করে এবং স্ট্রিম লোড করতে ব্যর্থ ইভেন্ট লগ করে:
বিজ্ঞাপন সন্নিবেশের সময়সূচী নির্ধারণ করুন
বিজ্ঞাপন বিরতির সময়সূচী নির্ধারণ করতে, একটি AVPlayerInterstitialEvent অবজেক্ট তৈরি করুন। ইভেন্ট অবজেক্টের templateItems প্রপার্টি AVPlayerItem অবজেক্টের একটি অ্যারেতে সেট করুন, যেখানে প্রতিটি আইটেম অবজেক্ট একটি অ্যাড পড ম্যানিফেস্ট URL ধারণ করে।
একটি অ্যাড পড ম্যানিফেস্ট URL তৈরি করতে, পদ্ধতি অনুসরণ করুন: HLS পড ম্যানিফেস্ট ডকুমেন্টেশন।
প্রদর্শনের উদ্দেশ্যে, নিম্নলিখিত উদাহরণটি কন্টেন্ট লাইভস্ট্রিমের বর্তমান সময় ব্যবহার করে একটি পড শনাক্তকারী স্ট্রিং তৈরি করে। generatePodIdentifier ফাংশনটি পড শনাক্তকারীকে ad_break_id/mid-roll-{minute} হিসাবে ফেরত পাঠায়।
আপনার প্রোডাকশন অ্যাপে, এমন একটি উৎস থেকে পড আইডেন্টিফায়ারটি উদ্ধার করুন যা প্রতিটি বিজ্ঞাপন বিরতির জন্য অনন্য মান প্রদান করে, লাইভস্ট্রিমের সমস্ত দর্শকের জন্য সিঙ্ক্রোনাইজ করা।
নিম্নলিখিত উদাহরণে ব্যবহারকারী প্লে বোতামে ক্লিক করার পরের দুই মিনিটের মধ্যে একটি বিজ্ঞাপন বিরতি শুরু হওয়ার সময়সূচী নির্ধারণ করা হয়েছে:
scheduleAdInsertion পদ্ধতিটি বিজ্ঞাপন বিরতির শুরুর সময় গণনা করে এবং একটি বিজ্ঞাপন পড ম্যানিফেস্ট URL তৈরি করে। একটি AVPlayerInterstitialEvent অবজেক্ট তৈরি করতে এই URL ব্যবহার করুন।
ঐচ্ছিকভাবে, বিজ্ঞাপন প্লেব্যাকের সময় ব্যবহারকারীর স্কিপিং বা রিওয়াইন্ডিং সীমাবদ্ধ করতে AVPlayerInterstitialEvent.Restrictions struct ব্যবহার করুন।
বিজ্ঞাপন ইভেন্টগুলি পরিচালনা করুন
বিজ্ঞাপন ইভেন্টগুলি পরিচালনা করার জন্য, IMAStreamManagerDelegate প্রোটোকলটি বাস্তবায়ন করুন। এই পদ্ধতির মাধ্যমে আপনি বিজ্ঞাপন বিরতি কখন শুরু এবং শেষ হয় তা ট্র্যাক করতে এবং পৃথক বিজ্ঞাপন সম্পর্কে তথ্য পেতে পারেন।
আপনার অ্যাপটি চালান। সফল হলে, আপনি একটি পড সার্ভিং ম্যানিফেস্ট স্ট্রিম ব্যবহার করে ইন্টারস্টিশিয়ালগুলির অনুরোধ করতে এবং খেলতে পারেন।