1. خانه
  2. ناشرین
  3. پیاده‌سازی تبلیغات ویدئویی (Interstitial/Rewarded Video) و بنری تمام صفحه (Interstitial Banner) در پروژه اندروید

پیاده‌سازی تبلیغات ویدئویی (Interstitial/Rewarded Video) و بنری تمام صفحه (Interstitial Banner) در پروژه اندروید

گام 1: تنظیمات اولیه پروژه

ابتدا تنظیمات اولیه پروژه را از لینک زیر مطالعه کرده و مراحل را انجام دهید:

 

گام 2: دریافت تبلیغ

نمایش یک تبلیغ ویدئویی در اپلیکیشن به دو صورت ممکن است صورت پذیرد. یک روش، نمایش تبلیغ بصورت stream می‌باشد. در این حالت، همزمان که کاربر درحال مشاهده بخشی از تبلیغ است، ادامه آن از اینترنت لود می‌گردد. ممکن است به دلیل کندی سرعت اینترنت، در این حالت کاربر با مکث‌های متعددی در هنگام دریافت و مشاهده تبلیغ مواجه شود. برای اینکه کاربر در هنگام نمایش تبلیغ منتظر نماند و تجربه کاربر در استفاده از اپلیکیشن بهبود یابد،روش دیگری نیز در SDK تپسل تعبیه شده است که در آن ابتدا فایل ویدئوی تبلیغاتی بطور کامل بارگذاری شده و سپس تبلیغ نمایش داده می‌شود.

همچنین در تپسل، تبلیغ می تواند در ناحیه‌های مختلفی از برنامه شما (مانند فروشگاه، انتهای هر مرحله، ابتدای مرحله جهت دریافت امتیاز دوبرابر، دریافت بنزین/لایف و …) پخش شود. در تپسل به این ناحیه‌ها zone گفته می شود. ناحیه‌های هر اپلیکیشن در پنل تپسل تعریف می شوند.

 

با اجرای تابع زیر، می‌توانید یک درخواست تبلیغ به تپسل ارسال کرده و یک تبلیغ دریافت نمایید:

Tapsell.requestAd(context, zoneId, options, new TapsellAdRequestListener() {
    @Override
    public void onError (String error)
    {
    }

    @Override
    public void onAdAvailable (TapsellAd ad)
    {
    }

    @Override
    public void onNoAdAvailable ()
    {
    }

    @Override
    public void onNoNetwork ()
    {
    }

    @Override
    public void onExpiring (TapsellAd ad)
    {
    }
});

هر درخواست شامل یک ورودی zoneId است که برای استفاده از ناحیه پیش‌فرض می‌توانید از مقدار null استفاده نمایید. اطلاعات بیشتر درباره zone را می‌توانید از تیم فنی تپسل دریافت کنید. ورودی options شامل تنظیمات تبلیغ مورد درخواست است. این تبلیغ می‌تواند از نوع Cached یا Streamed باشد.

کش کردن ویدئو

تنها در ناحیه‌هایی که کاربر با احتمال زیادی پس از باز کردن اپلیکیشن تبلیغ آن را مشاهده می‌کند، از تبلیغ Cached استفاده کنید. جهت توضیحات بیشتر درباره روش انتخاب متد دریافت مناسب، اینجا را مطالعه کنید.

ورودی options از جنس کلاس TapsellAdRequestOptions است که دارای متغیری با عنوان cacheType می‌باشد که مقادیر آن در جدول ۱ آمده است.

 

جدول ۱ مقادیر مختلف پارامتر cacheType در درخواست تبلیغ
مقدار توضیحات
CACHE_TYPE_CACHED دریافت ویدئو در ابتدا و نمایش آن پس از دانلود
CACHE_TYPE_STREAMED نمایش ویدئو بصورت برخط (stream)

 

نتیجه درخواست تبلیغ به ورودی سوم که یک Listener از نوع TapsellAdRequestListener است بازگردانده می‌شود. توضیحات توابع این interface در جدول ۲ آمده است.

 

جدول ۲ توابع interface دریافت نتیجه درخواست تبلیغ
تابع توضیحات (زمان اجرا)
onError (String error) هنگامی که هر نوع خطایی در پروسه‌ی دریافت تبلیغ بوجود بیاید
onAdAvailable (TapsellAd ad) زمانی که تبلیغ دریافت شده و آماده‌ی نمایش باشد.
onNoAdAvailable () در صورتی که تبلیغی برای نمایش وجود نداشته باشد.
onNoNetwork() زمانی که دسترسی به شبکه موجود نباشد.
onExpiring(TapsellAd ad) زمانی که تبلیغ منقضی شود. هر تبلیغ مدت زمان مشخصی معتبر است و در صورتی که تا قبل از آن نمایش داده نشود منقضی شده و دیگر قابل نمایش نخواهد بود.

 

گام 3: نمایش تبلیغ

هر تبلیغ یک شیء از نوع TapsellAd است که جهت نمایش آن‌، می‌توانید از تابع زیر استفاده نمایید (این تابع حداکثر یک بار برای هر تبلیغ قابل اجراست) :

ad.show(context, showOptions, new TapsellAdShowListener() {
    @Override
    public void onOpened (TapsellAd ad)
    {
        
    }
    @Override
    public void onClosed (TapsellAd ad)
    {
        
    }
});

ورودی showOptions متغیری از نوع TapsellShowOptions است که توضیحات آن در جدول ۳ در ادامه آورده شده است. همچنین توابع onOpened و onClosed از رابط TapsellAdShowListener توابعی هستند که زمان اجرا و پایان نمایش تبلیغ اجرا می‌شوند.

 

جدول ۳ توابع کلاس TapsellShowOptions
تابع توضیحات
setBackDisabled(boolean)
در هنگام پخش تبلیغ دکمه‌ی بازگشت گوشی فعال باشد یا خیر
setImmersiveMode(boolean)
فعال‌سازی حالت Immersive در هنگام پخش تبلیغ
setRotationMode(int)
تعیین وضعیت گوشی در هنگام پخش تبلیغ به یکی از حالات:
ROTATION_LOCKED_PORTRAIT
ROTATION_LOCKED_LANDSCAPE
ROTATION_UNLOCKED
ROTATION_LOCKED_REVERSED_PORTRAIT
ROTATION_LOCKED_REVERSED_LANDSCAPE
setShowDialog(boolean)
نمایش دیالوگ اخطار در هنگام بازگشت از تبلیغات جایزه‌دار

 

گام 4: دریافت نتیجه نمایش تبلیغ

جهت دریافت نتیجه نمایش تبلیغات، باید یک شی از کلاس TasellRewardListener ایجاد نمایید و در آن را به SDK تپسل به عنوان ورودی تابع Tapsell.setRewardListener بدهید. کد این بخش در ادامه آمده است.

Tapsell.setRewardListener(new TapsellRewardListener() {
	@Override
	public void onAdShowFinished(TapsellAd ad, boolean completed) {
		// store user reward if ad.isRewardedAd() and completed is true
	}
});

در صورتیکه مقدار completed برابر با true باشد و تبلیغ از نوع جایزه‌دار باشد (یعنی مقدار برگردانده شده از تابع ad.isRewardedAd برابر با true باشد)، می‌توانید جایزه درون برنامه کاربر (سکه/اعتبار/بنزین/…) را به کاربر بدهید.

 

نمونه پیاده‌سازی

یک نمونه پیاده‌سازی SDK تپسل در Android Studio و Eclipse در repository های زیر آمده است.

 

 

لطفا نظرات خود درباره محتوی مستندات و مشکلاتی که در پیاده‌سازی SDK تپسل با آنها مواجه شدید را به ما اطلاع دهید.

 

 

مرحله بعد: پیاده سازی تبلیغات پیش‌نمایشی (Pre-roll) در پروژه اندروید
مرحله قبل: تنظیمات اولیه پروژه

آیا این این آموزش مفید بود؟

مقالات و آموزش های مرتبط