IMA SDK-এর মাধ্যমে আপনার ওয়েবসাইট এবং অ্যাপে মাল্টিমিডিয়া বিজ্ঞাপন যুক্ত করা সহজ। IMA SDK যেকোনো VAST-সম্মত অ্যাড সার্ভার থেকে বিজ্ঞাপনের জন্য অনুরোধ করতে পারে এবং আপনার অ্যাপে বিজ্ঞাপনের প্লেব্যাক পরিচালনা করতে পারে। IMA DAI SDK-এর সাহায্যে, অ্যাপগুলো বিজ্ঞাপন এবং কন্টেন্ট ভিডিও—উভয়ই VOD বা লাইভ কন্টেন্টের জন্য একটি স্ট্রিম অনুরোধ করে। এরপর SDK একটি সম্মিলিত ভিডিও স্ট্রিম ফেরত দেয়, ফলে আপনাকে আপনার অ্যাপের মধ্যে বিজ্ঞাপন এবং কন্টেন্ট ভিডিওর মধ্যে পরিবর্তন পরিচালনা করতে হয় না।
আপনার পছন্দের DAI সমাধানটি নির্বাচন করুন।
সম্পূর্ণ পরিষেবা DAI
এই নির্দেশিকাটি একটি সাধারণ ভিডিও প্লেয়ার অ্যাপে IMA DAI SDK কীভাবে সংহত করতে হয় তা দেখায়। আপনি যদি একটি সম্পূর্ণ নমুনা সংহতকরণ দেখতে বা অনুসরণ করতে চান, তাহলে GitHub থেকে BasicExample ডাউনলোড করুন।
আইএমএ ডিএআই ওভারভিউ
এই নির্দেশিকায় যেমন দেখানো হয়েছে, IMA DAI বাস্তবায়নে চারটি প্রধান SDK উপাদান জড়িত:
-
StreamDisplayContainer: একটি কন্টেইনার অবজেক্ট যা ভিডিও প্লেব্যাক এলিমেন্টের উপরে থাকে এবং বিজ্ঞাপনের UI এলিমেন্টগুলোকে ধারণ করে। -
AdsLoader: এমন একটি অবজেক্ট যা স্ট্রিমের জন্য অনুরোধ করে এবং স্ট্রিম রিকোয়েস্ট-রেসপন্স অবজেক্ট দ্বারা ট্রিগার হওয়া ইভেন্টগুলো পরিচালনা করে। আপনার কেবল একটিই অ্যাডস লোডার ইনস্ট্যানশিয়েট করা উচিত, যা অ্যাপ্লিকেশনটির জীবনচক্র জুড়ে পুনরায় ব্যবহার করা যায়। -
StreamRequest: একটি অবজেক্ট যা একটি স্ট্রিম রিকোয়েস্টকে সংজ্ঞায়িত করে। স্ট্রিম রিকোয়েস্টগুলো ভিডিও-অন-ডিমান্ড অথবা লাইভ স্ট্রিমের জন্য হতে পারে। লাইভ স্ট্রিম রিকোয়েস্টে একটি অ্যাসেট কী নির্দিষ্ট করা থাকে, অন্যদিকে VOD রিকোয়েস্টে একটি CMS ID এবং ভিডিও ID নির্দিষ্ট করা থাকে। উভয় প্রকার রিকোয়েস্টেই ঐচ্ছিকভাবে নির্দিষ্ট স্ট্রিমগুলো অ্যাক্সেস করার জন্য প্রয়োজনীয় একটি API কী এবং Google Ad Manager সেটিংসে নির্দিষ্ট করা বিজ্ঞাপন শনাক্তকারীগুলো পরিচালনা করার জন্য IMA SDK-এর একটি Google Ad Manager নেটওয়ার্ক কোড অন্তর্ভুক্ত থাকতে পারে। -
StreamManager: একটি অবজেক্ট যা ডাইনামিক বিজ্ঞাপন সন্নিবেশ স্ট্রিম এবং DAI ব্যাকএন্ডের সাথে মিথস্ক্রিয়া পরিচালনা করে। স্ট্রিম ম্যানেজার ট্র্যাকিং পিংও পরিচালনা করে এবং স্ট্রিম ও বিজ্ঞাপন ইভেন্টগুলো পাবলিশারের কাছে ফরোয়ার্ড করে।
পূর্বশর্ত
- অ্যান্ড্রয়েড স্টুডিও
- SDK ইন্টিগ্রেশনের জন্য নমুনা ভিডিও প্লেয়ার অ্যাপ
নমুনা ভিডিও প্লেয়ার অ্যাপটি ডাউনলোড করে চালান।
নমুনা অ্যাপটিতে একটি কার্যকরী ভিডিও প্লেয়ার রয়েছে যা HLS ভিডিও চালাতে পারে। IMA DAI SDK-এর DAI সক্ষমতাগুলো সমন্বিত করার জন্য এটিকে একটি সূচনা বিন্দু হিসেবে ব্যবহার করুন।
নমুনা ভিডিও প্লেয়ার অ্যাপটি ডাউনলোড করে এক্সট্র্যাক্ট করুন।
অ্যান্ড্রয়েড স্টুডিও চালু করুন এবং 'Open an existing Android Studio project' নির্বাচন করুন, অথবা যদি অ্যান্ড্রয়েড স্টুডিও আগে থেকেই চালু থাকে, তাহলে 'File > New > Import Project' নির্বাচন করুন। এরপর
SampleVideoPlayer/build.gradle' বেছে নিন।Tools > Android > Sync Project with Gradle Files নির্বাচন করে একটি Gradle সিঙ্ক চালান।
রান > রান 'অ্যাপ' ব্যবহার করে নিশ্চিত করুন যে প্লেয়ার অ্যাপটি একটি ফিজিক্যাল অ্যান্ড্রয়েড ডিভাইস বা অ্যান্ড্রয়েড ভার্চুয়াল ডিভাইসে কম্পাইল এবং রান হয়। প্লে হওয়ার আগে ভিডিও স্ট্রিমটি লোড হতে কয়েক মুহূর্ত সময় লাগা স্বাভাবিক।
নমুনা ভিডিও প্লেয়ারটি পরীক্ষা করুন
নমুনা ভিডিও প্লেয়ারটিতে এখনও কোনো 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 একীভূত করুন
videoplayerappপ্যাকেজের (app/java/com.google.ads.interactivemedia.v3.samples/videoplayerapp/) মধ্যেSampleAdsWrapperনামে একটি নতুন ক্লাস তৈরি করুন, যা বিদ্যমানSampleVideoPlayerর্যাপ করবে এবং IMA DAI বাস্তবায়নকারী লজিক যোগ করবে। এটি করার জন্য, আপনাকে প্রথমে একটিAdsLoaderতৈরি করতে হবে, যা DAI স্ট্রিম অনুরোধ করার জন্য ব্যবহৃত হয়।এই কোড অংশে HLS ও DASH, লাইভ এবং VOD স্ট্রিমের জন্য নমুনা প্যারামিটার অন্তর্ভুক্ত রয়েছে। কোন স্ট্রিমটি প্লে করা হবে তা নির্ধারণ করতে,
CONTENT_TYPEভেরিয়েবলটি আপডেট করুন।VideoStreamPlayer.VideoStreamPlayerCallbackএক্সটেন্ড করে এমন একটিSampleVideoPlayerCallbackইন্টারফেস ইনস্ট্যান্স তৈরির কাজটি পরিচালনা করার জন্য একটিcreateSampleVideoPlayerCallback()হেল্পার মেথড তৈরি করুন।DAI-এর সাথে কাজ করার জন্য, প্লেয়ারকে অবশ্যই IMA DAI SDK-তে ID3 ইভেন্ট পাঠাতে হবে। নিচের নমুনা কোডে,
callback.onUserTextReceived()মেথডটি এই কাজটি করে থাকে।SteamRequestতৈরি করার জন্য একটিbuildStreamRequest()মেথড যোগ করুন। আপনিCONTENT_TYPEভেরিয়েবলটি যেভাবে সেট করেছেন, তার উপর ভিত্তি করে এই মেথডটি বিভিন্ন স্ট্রিমের মধ্যে পরিবর্তন করে। এই গাইডে ব্যবহৃত ডিফল্ট স্ট্রিমটি হলো IMA-এর নমুনা VOD HLS স্ট্রিম।স্ট্রিমটি প্লে করার জন্য আপনার একটি
VideoStreamPlayerও প্রয়োজন, তাই একটিcreateVideoStreamPlayer()মেথড যোগ করুন, যাVideoStreamPlayerইমপ্লিমেন্ট করে এমন একটি অ্যানোনিমাস ক্লাস তৈরি করে।প্রয়োজনীয় লিসেনারগুলো প্রয়োগ করুন এবং ত্রুটি ব্যবস্থাপনার জন্য সমর্থন যোগ করুন।
AdErrorListenerইমপ্লিমেন্টেশনটি লক্ষ্য করুন, কারণ বিজ্ঞাপনগুলি প্লে হতে ব্যর্থ হলে এটি একটি ফলব্যাক URL কল করে। যেহেতু কন্টেন্ট এবং বিজ্ঞাপনগুলি একই স্ট্রিমে থাকে, তাই DAI স্ট্রিমে কোনো ত্রুটি দেখা দিলে আপনাকে একটি ফলব্যাক স্ট্রিম কল করার জন্য প্রস্তুত থাকতে হবে।লগিংয়ের জন্য কোড যোগ করুন।
SampleAdsWrapperইনস্ট্যানশিয়েট ও কল করার জন্যvideoplayerappএরMyActivityপরিবর্তন করুন। এছাড়াও, একটিImaSdkSettingsইনস্ট্যান্স তৈরি করার জন্য এখানে একটি হেল্পার মেথড ব্যবহার করেImaSdkFactory.initialize()কল করুন।একটি
ImaSdkSettingsইনস্ট্যান্স তৈরি করতেgetImaSdkSettings()হেল্পার মেথডটি যোগ করুন।লগিংয়ের জন্য UI এলিমেন্ট যোগ করতে অ্যাক্টিভিটির লেআউট ফাইল
activity_my.xmlপরিবর্তন করুন।
অভিনন্দন! আপনি এখন আপনার অ্যান্ড্রয়েড অ্যাপে ভিডিও বিজ্ঞাপন অনুরোধ ও প্রদর্শন করতে পারছেন। আপনার বাস্তবায়নটি আরও নিখুঁত করতে, বুকমার্কস , স্ন্যাপব্যাক এবং এপিআই ডকুমেন্টেশন দেখুন।
সমস্যা সমাধান
ভিডিও বিজ্ঞাপন চালাতে সমস্যা হলে, সম্পূর্ণ BasicExample-টি ডাউনলোড করে দেখুন। যদি এটি BasicExample-এ সঠিকভাবে কাজ করে, তাহলে সম্ভবত আপনার অ্যাপের IMA ইন্টিগ্রেশন কোডে কোনো সমস্যা আছে।
আপনার যদি এখনও সমস্যা হয়, তাহলে IMA SDK ফোরামে যান।