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

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

 

گام ۱: راه اندازی پروژه

ابتدا با توجه به پلتفرم خروجی مورد نظر ، تنظیمات اولیه پروژه خود را انجام دهید :

گام ۲: دریافت کلید تپسل

وارد پنل مدیریت تپسل شده و با تعریف یک اپلیکیشن جدید با عنوان پکیج اپلیکیشن اندرویدی خود، یک کلید تپسل دریافت کنید.

گام ۳: شروع کار با SDK تپسل

ابتدا برای دسترسی به کدهای تپسل از تکه کد زیر استفاده کنید

using TapsellSDK;

سپس تابع زیر را در یکی از اسکریپت های برنامه ی خود که در ابتدای برنامه اجرا می شود فراخوانی کنید.

Tapsell.initialize(appKey);

ورودی appKey کلید تپسلی است که در گام قبل از پنل تپسل دریافت کردید.

 

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

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

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

Tapsell.requestAd(zoneId, cached, Action<TapsellAd> onAdAvailableAction,
    Action<string> onNoAdAvailableAction, Action<TapsellError> onErrorAction,
    Action<string> onNoNetworkAction, Action<TapsellAd> onExpiringAction);

هر درخواست شامل یک ورودی zoneId است که باید آن را از داشبورد تپسل در صفحه اپلیکیشن خود دریافت کنید. دقت کنید که برای این پارامتر نباید از مقدار null استفاده کنید. ورودی cached یک متغیر bool (با مقدار True/False) می باشد که نشان می دهد که آیا تبلیغ باید ابتدا دانلود شده و سپس به کاربر نشان داده شود یا خیر.

کش کردن ویدئو

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

نتیجه درخواست تبیلغ به اکشن های ورودی بازگردانده می شود. یک نمونه پیاده سازی اکشن های لازم در ادامه آمده است.

در اکشن onAdAvailable شناسه یک تبلیغ به شما برگردانده می شود که می بایست جهت نمایش تبلیغ آن را ذخیره نمایید. جهت توضیحات بیشتر به قطعه کد پیاده سازی اکشن که در ادامه آمده است توجه نمایید.

Tapsell.requestAd(zoneId, cached, 
    (TapsellAd result) => {
       // onAdAvailable
       Debug.Log("Action: onAdAvailable");
       TapsellAd ad = result; // store this to show the ad later
    },

    (string zoneId) => {
        // onNoAdAvailable
        Debug.Log("No Ad Available");
    },

    (TapsellError error) => {
        // onError
        Debug.Log(error.error);
    },

    (string zoneId) => {
        // onNoNetwork
        Debug.Log("No Network");
    },

    (TapsellAd result) => {
        // onExpiring
        Debug.Log("Expiring");
        // this ad is expired, you must download a new ad for this zone
    }
);

توضیحات اکشن های مختلف و شرایط اجرا شدن آن ها در جدول ۱ آمده است.

 

جدول ۱ اکشن های دریافت نتیجه درخواست تبلیغ
تابع توضیحات (زمان اجرا)
onErrorAction(TapsellError) هنگامی که هر نوع خطایی در پروسه‌ی دریافت تبلیغ بوجود بیاید
onAdAvailableAction(TapsellAd) زمانی که تبلیغ دریافت شده و آماده‌ی نمایش باشد.
onNoAdAvailableAction (string) در صورتی که تبلیغی برای نمایش وجود نداشته باشد.
onNoNetworkAction (string) زمانی که دسترسی به شبکه موجود نباشد.
onExpiring(TapsellAd) زمانی که تبلیغ منقضی شود. هر تبلیغ مدت زمان مشخصی معتبر است و در صورتی که تا قبل از آن نمایش داده نشود منقضی شده و دیگر قابل نمایش نخواهد بود.

 

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

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

Tapsell.showAd(ad, showOptions);

ورودی ad شی تبلیغ است که در گام قبل و در اکشن onAdAvailable به شما داده شده‌است. ورودی showOptions متغیری از نوع TapsellShowOptions است که توضیحات آن در جدول ۲ آورده شده است.

 

جدول ۲ متغیرهای کلاس TapsellShowOptions
متغیر (نوع) توضیحات
backDisabled (bool)
در هنگام پخش تبلیغ دکمه‌ی بازگشت گوشی فعال باشد یا خیر
immmersiveMode (bool)
فعال‌سازی حالت Immersive در هنگام پخش تبلیغ (فقط در اندروید)
rotationMode (int)
تعیین وضعیت گوشی در هنگام پخش تبلیغ به یکی از سه حالت:
ROTATION_LOCKED_PORTRAIT
ROTATION_LOCKED_LANDSCAPE
ROTATION_UNLOCKED
ROTATION_LOCKED_REVERSED_PORTRAIT
ROTATION_LOCKED_REVERSED_LANDSCAPE
showDialog (bool)
نمایش دیالوگ اخطار در هنگام بازگشت از تبلیغات جایزه‌دار

یک نمونه پیاده‌سازی درخواست تبلیغ در ادامه آمده است.

TapsellShowOptions showOptions = new TapsellShowOptions ();
showOptions.backDisabled = false;
showOptions.immersiveMode = false;
showOptions.rotationMode = TapsellShowOptions.ROTATION_UNLOCKED;
showOptions.showDialog = true;
Tapsell.showAd(ad, showOptions);

 

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

در صورتیکه در اپلیکیشن خود از تبلیغات جایزه‌دار استفاده می‌کنید، جهت دریافت نتیجه نمایش تبلیغ‌ها، باید یک اکشن مطابق زیر به SDK تپسل بدهید.

Tapsell.setRewardListener( (TapsellAdFinishedResult result) => 
	{
		// you may give rewards to user if result.completed and
		// result.rewarded are both true
	}
);

پس از نمایش تبلیغ، اکشن onAdShowFinished اجرا می‌شود و نتیجه نمایش تبلیغ بصورت یک شی از کلاس TapsellAdFinishedResult بازگردانده می‌شود. درصورتیکه تبلیغ نمایش داده شده جایزه‌دار باشد، متغیر rewarded در این شی دارای مقدار true خواهد بود. همچنین درصورتیکه تبلیغ تا انتها دیده شود، متغیر completed در ای شین دارای مقدار true خواهد بود. در صورتی که تبلیغ جایزه‌دار باشد و مشاهده ویدئو تا انتها انجام شده باشد، باید جایزه درون برنامه (سکه، اعتبار، بنزین یا …) را به کاربر بدهید.

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

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

 

 

لطفا نظرات خود درباره محتوای این فایل و مشکلاتی که در پیاده‌سازی SDK تپسل با آنها مواجه شدید را به ما اطلاع دهید.
مرحله بعد: پیاده‌سازی تبلیغات بنری هم‌نما (Native Banner) در پروژه Unity (اندروید)

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

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