IMA SDK আপনার ওয়েবসাইট ও অ্যাপে মাল্টিমিডিয়া বিজ্ঞাপন ইন্টিগ্রেট করা সহজ করে তোলে। IMA SDK যেকোনও VAST-এর সাথে মানানসই বিজ্ঞাপন সার্ভার থেকে বিজ্ঞাপনের অনুরোধ করতে এবং আপনার অ্যাপে বিজ্ঞাপন প্লেব্যাক ম্যানেজ করতে পারে। IMA DAI SDK-এর মাধ্যমে, অ্যাপগুলি বিজ্ঞাপন ও কন্টেন্ট ভিডিওর জন্য—VOD বা লাইভ কন্টেন্ট— স্ট্রিম অনুরোধ করে। SDK তারপরে একটি সম্মিলিত ভিডিও স্ট্রিম রিটার্ন করে, যাতে আপনাকে নিজের অ্যাপের মধ্যে বিজ্ঞাপন এবং কন্টেন্ট ভিডিওর মধ্যে সুইচ করা ম্যানেজ করতে না হয়।
আপনি যে DAI সমাধানে আগ্রহী সেটি বেছে নিন
সম্পূর্ণ পরিষেবা DAI
এই নির্দেশিকা থেকে আপনি জানতে পারবেন যে কীভাবে একটি সাধারণ ভিডিও প্লেয়ার অ্যাপে IMA DAI SDK ইন্টিগ্রেট করতে হয়। আপনি যদি সম্পূর্ণ স্যাম্পেল ইন্টিগ্রেশন দেখতে বা অনুসরণ করতে চান, তাহলে GitHub থেকে BasicExample ডাউনলোড করুন।
IMA DAI ওভারভিউ
IMA DAI প্রয়োগ করার ক্ষেত্রে চারটি প্রধান SDK কম্পোনেন্ট থাকে, যেমনটি এই গাইডে দেখানো হয়েছে:
StreamDisplayContainer: ভিডিও প্লেব্যাক এলিমেন্টের উপরে থাকা এবং বিজ্ঞাপন UI এলিমেন্ট ধারণ করা কন্টেনার অবজেক্ট।AdsLoader: একটি অবজেক্ট যা স্ট্রিমের অনুরোধ করে এবং স্ট্রিমের অনুরোধের রেসপন্স অবজেক্টের মাধ্যমে ট্রিগার করা ইভেন্ট ম্যানেজ করে। আপনাকে শুধুমাত্র একটি বিজ্ঞাপন লোডার ইনস্ট্যানশিয়েট করতে হবে, যা অ্যাপ্লিকেশন চালু থাকা কালীন সময়ে বারবার ব্যবহার করা যেতে পারে।StreamRequest: একটি অবজেক্ট যা স্ট্রিম অনুরোধকে সংজ্ঞায়িত করে। স্ট্রিম সংক্রান্ত অনুরোধ চাহিদা অনুসার ভিডিও বা লাইভ স্ট্রিমের জন্য হতে পারে। লাইভ স্ট্রিম অনুরোধে অ্যাসেট কী উল্লেখ করা হয়, অন্যদিকে VOD অনুরোধে CMS আইডি ও ভিডিও আইডি উল্লেখ করা হয়। দুটি অনুরোধের ধরনের মধ্যে নির্দিষ্ট স্ট্রিম অ্যাক্সেস করার জন্য প্রয়োজনীয় API কী এবং Google Ad Manager সেটিংস অনুযায়ী IMA SDK-এর বিজ্ঞাপন শনাক্তকারী ম্যানেজ করার জন্য Google Ad Manager নেটওয়ার্ক কোড ঐচ্ছিকভাবে অন্তর্ভুক্ত থাকতে পারে।StreamManager: DAI ব্যাকএন্ডের সাথে ডায়নামিক বিজ্ঞাপন যোগ করার স্ট্রিম ও ইন্টার্যাকশন ম্যানেজ করে এমন একটি অবজেক্ট। এছাড়াও, স্ট্রিম ম্যানেজার ট্র্যাকিং পিং ম্যানেজ করে এবং স্ট্রিম ও বিজ্ঞাপন ইভেন্ট প্রকাশককে ফরওয়ার্ড করে।
পূর্বশর্ত
- Android Studio
- SDK ইন্টিগ্রেশনের জন্য নমুনা ভিডিও প্লেয়ার অ্যাপ
স্যাম্পেল ভিডিও প্লেয়ার অ্যাপ ডাউনলোড করে চালান
স্যাম্পেল অ্যাপে একটি কার্যকরী ভিডিও প্লেয়ার দেওয়া আছে যা HLS ভিডিও চালায়। IMA DAI SDK-এর DAI ক্ষমতা ইন্টিগ্রেট করার জন্য শুরুর স্থান হিসেবে এটি ব্যবহার করুন।
স্যাম্পেল ভিডিও প্লেয়ার অ্যাপ ডাউনলোড করে সেটি এক্সট্র্যাক্ট করুন।
Android Studio চালু করে আগে থেকে থাকা Android Studio প্রোজেক্ট খুলুন বিকল্প বেছে নিন, অথবা Android Studio আগে থেকেই চালু থাকলে, ফাইল > নতুন > প্রোজেক্ট ইম্পোর্ট করুন বিকল্প বেছে নিন। তারপর
SampleVideoPlayer/build.gradleবিকল্প বেছে নিন।টুল > Android > Gradle ফাইলের সাথে প্রোজেক্ট সিঙ্ক করুন বিকল্প বেছে নিয়ে Gradle সিঙ্ক রান করান।
রান করুন > 'অ্যাপ' রান করুন বিকল্প ব্যবহার করে প্লেয়ার অ্যাপটি কোনও ফিজিক্যাল Android ডিভাইসে বা Android ভার্চুয়াল ডিভাইসে কম্পাইল ও রান করা হচ্ছে কিনা তা নিশ্চিত করুন। ভিডিও স্ট্রিম চালানোর আগে লোড হতে কয়েক মুহূর্ত সময় লাগাটা স্বাভাবিক।
স্যাম্পেল ভিডিও প্লেয়ার পরীক্ষা করুন
স্যাম্পেল ভিডিও প্লেয়ারে এখনও কোনও IMA DAI SDK ইন্টিগ্রেশন কোড নেই। স্যাম্পেল অ্যাপের দুটি প্রধান অংশ আছে:
samplevideoplayer/SampleVideoPlayer.java: একটি ExoPlayer-ভিত্তিক HLS প্লেয়ার যা IMA DAI ইন্টিগ্রেশনের ভিত্তি হিসেবে কাজ করে।videoplayerapp/MyActivity.java: এই অ্যাক্টিভিটি ভিডিও প্লেয়ার তৈরি করে এবং সেটিতেContextওmedia3.ui.PlayerViewপাস করে।
প্লেয়ার অ্যাপে IMA DAI SDK যোগ করুন
এছাড়াও, আপনাকে অবশ্যই IMA DAI SDK-এর রেফারেন্স অন্তর্ভুক্ত করতে হবে। Android Studio-তে,
app/build.gradle-এ অবস্থিত আপনার অ্যাপ্লিকেশন-লেভেল build.gradle ফাইলে নিম্নলিখিতগুলি যোগ করুন। IMA SDK-এর জন্য লাইব্রেরি ডিসুগারিং চালু করতে হবে, যা আপনাকে coreLibraryDesugaringEnabled true সেট করে এবং build.gradle
ফাইলে 'com.android.tools:desugar_jdk_libs' যোগ করে করতে হবে।
বিস্তারিত জানতে, nio স্পেসিফিকেশন সহ ডিসুগারিংয়ের মাধ্যমে উপলভ্য Java 11+ API দেখুন।
IMA DAI SDK ইন্টিগ্রেট করা
বিদ্যমান
SampleVideoPlayer-কে র্যাপ করতে এবং IMA DAI প্রয়োগ করার লজিক যোগ করতে,videoplayerappপ্যাকেজেSampleAdsWrapperনামের একটি নতুন ক্লাস তৈরি করুন (app/java/com.google.ads.interactivemedia.v3.samples/videoplayerapp/-এ) । এটি করতে, আপনাকে প্রথমে একটিAdsLoaderতৈরি করতে হবে যা DAI স্ট্রিমের অনুরোধ করতে ব্যবহার করা হয়।এই স্নিপেটে HLS ও DASH, লাইভ ও VOD স্ট্রিমের জন্য স্যাম্পেল প্যারামিটার অন্তর্ভুক্ত থাকে। কোন স্ট্রিম চালানো হচ্ছে তা সেট করতে,
CONTENT_TYPEভেরিয়েবল আপডেট করুন।createSampleVideoPlayerCallback()হেল্পার পদ্ধতি তৈরি করুন যাSampleVideoPlayerCallbackইন্টারফেস ইনস্ট্যান্স তৈরি করা ম্যানেজ করে, যাVideoStreamPlayer.VideoStreamPlayerCallbackএক্সটেন্ড করে।DAI-এর সাথে কাজ করতে, প্লেয়ারকে অবশ্যই IMA DAI SDK-তে ID3 ইভেন্ট পাস করতে হবে। নিম্নলিখিত স্যাম্পেল কোডে
callback.onUserTextReceived()পদ্ধতি এটি করে।SteamRequestতৈরি করতে একটিbuildStreamRequest()পদ্ধতি যোগ করুন। আপনি যেভাবেCONTENT_TYPEভেরিয়েবেল সেট করেন তার উপর ভিত্তি করে এই পদ্ধতি বিভিন্ন স্ট্রিমের মধ্যে পরিবর্তন করে। এই নির্দেশিকায় ব্যবহৃত ডিফল্ট স্ট্রিম হল IMA-এর স্যাম্পেল VOD HLS স্ট্রিম।এছাড়াও, স্ট্রিম চালানোর জন্য আপনার একটি
VideoStreamPlayerপ্রয়োজন, তাই এমন একটিcreateVideoStreamPlayer()পদ্ধতি যোগ করুন যা একটি পরিচয় গোপন রাখা ক্লাস তৈরি করে যাVideoStreamPlayerইমপ্লিমেন্ট করে।প্রয়োজনীয় লিসনার প্রয়োগ করুন এবং সমস্যা সমাধানের জন্য সহায়তা যোগ করুন।
AdErrorListenerপ্রয়োগটি লক্ষ্য করুন, কারণ বিজ্ঞাপন প্লে করতে না পারলে এটি একটি ফলব্যাক URL কল করে। কন্টেন্ট ও বিজ্ঞাপন যেহেতু একটি স্ট্রিমে থাকে, তাই DAI স্ট্রিমে কোনও সমস্যা হলে আপনাকে অবশ্যই ফলব্যাক স্ট্রিম কল করার জন্য প্রস্তুত থাকতে হবে।লগ করার জন্য কোড যোগ করুন।
ইনস্ট্যানশিয়েট ও কল করতে
videoplayerapp-এMyActivityপরিবর্তন করুনSampleAdsWrapper। এছাড়াও,ImaSdkSettingsইনস্ট্যান্স তৈরি করতে, হেল্পার পদ্ধতি ব্যবহার করেImaSdkFactory.initialize()-এ কল করুন ।ImaSdkSettingsইনস্ট্যান্স তৈরি করতেgetImaSdkSettings()সহায়ক পদ্ধতি যোগ করুন।লগিংয়ের জন্য UI এলিমেন্ট যোগ করতে অ্যাক্টিভিটির লেআউট ফাইল
activity_my.xmlপরিবর্তন করুন।
অভিনন্দন! আপনি এখন নিজের Android অ্যাপে ভিডিও বিজ্ঞাপন দেখানোর অনুরোধ করছেন। আপনার প্রয়োগকে আরও ভালভাবে টিউন করতে, বুকমার্ক, স্ন্যাপব্যাক, এবং API ডকুমেন্টেশন দেখুন।
সমস্যার সমাধান
ভিডিও বিজ্ঞাপন চালানোর সময় সমস্যা হলে, সম্পূর্ণ BasicExample ডাউনলোড করে দেখুন। BasicExample-এ এটি সঠিকভাবে কাজ করলে, আপনার অ্যাপের IMA ইন্টিগ্রেশন কোডে সম্ভবত কোনও সমস্যা আছে।
এর পরেও আপনার সমস্যা হলে, IMA SDK ফোরাম দেখুন।