آگهی‌های رسانه‌ای تعاملی تلفن همراه

«کیت توسعه نرم‌افزار تبلیغات تلفن همراه Google» اکنون از MRAID v3 که براساس پشتیبانی موجود از MRAID v2 ساخته شده است پشتیبانی بتا می‌کند و به تبلیغ‌کنندگان امکان می‌دهد عناصر خلاقانه MRAID v3 را به ناشران Ad Manager ارائه دهند. این راهنما جزئیات پیاده‌سازی MRAID را که در مشخصات MRAID v3 نامشخص و قابل تفسیر بود، روشن می‌کند. مخاطبان هدف آن نویسندگان خلاق MRAID v3 هستند.

پیش‌نیازها

ناشران باید موارد زیر را اجرا کنند:

  • «خدمات Google Play» نسخه ۱۵.۰.۰ یا بالاتر برای MRAID v3
  • «خدمات Google Play» نسخه ۷.۸ یا بالاتر برای MRAID v2

مقدمه‌های مفید

اگر با MRAID آشنا نیستید، می‌توانید در صفحه IAB MRAID اطلاعات بیشتری کسب کنید. همچنین می‌توانید سند تعاریف MRAID v3 را بارگیری کنید که جزئیات مربوط به همه پارامترهای مورد بحث در زیر را ارائه می‌دهد، و همچنین پست وبلاگ IAB درباره MRAID v3.

جزئیات پیاده‌سازی MRAID v3 (نسخه بتا)

قابلیت مشاهده - رویداد exposureChange

این رویداد پشتیبانی می‌شود و توصیه می‌کنیم به‌جای رویداد منسوخ‌شده viewableChange از شنونده برای رویداد جدید exposureChange استفاده کنید. روش mraid.isViewable() نیز منسوخ شده است. این روش‌های منسوخ‌شده همچنان برای حفظ سازگاری با نسخه قدیمی پشتیبانی می‌شوند.

تعریف رویداد exposureChange هرگاه نمای آگهی تغییر کند ارسال می‌شود. «کیت توسعه نرم‌افزار» دارای سازوکار نظرسنجی است تا از تولید بیش‌ازحد رویدادها جلوگیری کند. وضعیت اولیه به‌صورت ناهمزمان پس‌از ثبت شنونده توسط آگهی ارسال می‌شود. این تماس برگشتی شامل پارامتر exposed_percentage است که یک عدد ممیز شناور بین 0.0 و 100.0 است.

برای نمونه استفاده، به مشخصات MRAID v3 مراجعه کنید.

تشخیص و مقداردهی اولیه MRAID و مشخصه‌های MRAID_ENV

‫SDK با پروتکل مقداردهی اولیه که در مشخصات MRAID v3 تعریف شده است مطابقت دارد.

در شیء MRAID_ENV، کیت توسعه نرم‌افزار IDFA، limitAdTracking، شناسه برنامه، یا «قانون محافظت از حریم خصوصی آنلاین کودکان» (که اختیاری هستند) را ارسال نمی‌کند. همه متغیرهای موردنیاز را در شیء MRAID_ENV، ازجمله نسخه MRAID، نام کیت توسعه نرم‌افزار، و نسخه کیت توسعه نرم‌افزار ارائه می‌دهد.

اندازه‌گیری قابلیت شنیداری

رویداد جدیدی (audioVolumeChange) برای شناسایی اینکه آیا صدا شنیده می‌شود و چه زمانی میزان صدا تغییر می‌کند معرفی شده است.

رویداد audioVolumeChange یک پارامتر دارد: volume_percentage. این مقدار درصد حداکثر حجم بازپخش صوتی است. این مقدار یک عدد نقطه‌شناور بین 0.0 و 100.0 است (0.0 وقتی بازپخش مجاز نیست) یا null اگر حجم قابل تعیین نباشد.

برای نمونه استفاده، به مشخصات MRAID v3 مراجعه کنید.

mraid.getLocation()

چون mraid.getLocation() پشتیبانی نمی‌شود، همیشه -1 را برمی‌گرداند.

mraid.unload()

این روش را می‌توان در هر زمانی فراخوانی کرد و «کیت توسعه نرم‌افزار» با بستن آگهی، لغو تخصیص منابع، و سپس یا برداشتن نمای وب یا جایگزین کردن آن با سند دیگر یا آگهی جدید واکنش نشان می‌دهد.

وقتی عنصر خلاقانه unload() را فرا می‌خواند، لایه بومی برای انواع مختلف عنصر خلاقانه به‌صورت زیر پاسخ می‌دهد:

نوع رفتار unload()‎
برنمای آگهی درخواست آگهی جدیدی با همان پارامترهای درخواست آگهی کنونی ایجاد کنید.
میان‌آگهی میان‌آگهی را ببندید.

VPAID (تعریف واسط آگهی پخش‌کننده ویدیو)

«کیت توسعه نرم‌افزار تبلیغات تلفن همراه Google» از VPAID پشتیبانی نمی‌کند. ‫mraid.supports('vpaid') نادرست برمی‌گرداند.

mraid.useCustomClose()

‫mraid.useCustomClose() ممکن است بسته به قالب و نوع خلاقانه پشتیبانی نشود.

جزئیات پیاده‌سازی MRAID v2

mraid.getVersion()

‫mraid.getVersion() تا زمانی که عنصر خلاقانه بار نشده است 2.0 را برنمی‌گرداند. وقتی mraid.getState() مقدار loading را برمی‌گرداند، نسخه MRAID را بررسی نکنید.

mraid.resize()

وقتی mraid.resize() فراخوانده می‌شود، جایگزین تصویر نماگرفت بنر اصلی می‌شود. اگر آگهی تغییر اندازه داده‌شده فضای آگهی اصلی را پوشش ندهد، این موضوع قابل‌توجه است.

آگهی‌های تغییر اندازه داده‌شده نیز از چارچوب برنمای اصلی پیروی نمی‌کنند. اگر برنمایی در نمای پیمایشی قرار داده شود، آگهی تغییر اندازه داده‌شده همراه با برنما پیمایش نمی‌کند.

mraid.setResizeProperties()

همه تماس‌ها با mraid.setResizeProperties() باید حاوی فهرست کاملی از دارایی‌های الزامی باشد. اگر مشخصه‌های تغییر اندازه نامعتبر باشند، به پیش‌فرض‌هایشان برگردانده می‌شوند و همه فراخوانی‌های بعدی mraid.resize() تا زمانی که mraid.setResizeProperties() دوباره با پارامترهای معتبر فراخوانی شود ناموفق خواهد بود.

mraid.getMaxSize()

از mraid.getMaxSize() فقط باید برای تعیین حداکثر اندازه آگهی‌های تغییر اندازه داده‌شده استفاده شود. برای تعیین اندازه آگهی ازهم بازشدنی، از mraid.getScreenSize() استفاده کنید.

mraid.setOrientationProperties()

وقتی با allowOrientationChange تماس می‌گیرید و دارایی mraid.setOrientationProperties() روی true تنظیم شده است، تنظیم دارایی forceOrientation هیچ کاری انجام نمی‌دهد. عناصر خلاقی که می‌خواهند جهت‌گیری را اجباری کنند باید allowOrientationChange را روی false تنظیم کنند.

mraid.isViewable()

اگر یک نما آگهی‌ای را که درغیراین‌صورت رؤیت‌پذیر است بپوشاند، mraid.isViewable() همچنان true را برمی‌گرداند. محتوای برنامه نباید آگهی‌های نمایان را بپوشاند.

mraid.getCurrentPosition()

وقتی آگهی گسترش‌یافته دوتکه در حالت گسترده است، فراخوانی mraid.getCurrentPosition() در قطعه اول اندازه صفحه را برمی‌گرداند.

mraid.storePicture()

برای اینکه برنامه‌ای از mraid.storePicture() پشتیبانی کند، باید اجازه android.permission.WRITE_EXTERNAL_STORAGE را داشته باشد.