跳到主要内容

广告接入指南

简介

      在接入广告之前,首先需要完成SDK的初始化。

      MG Ads 支持【开屏1920*1080】【退屏】【横幅728*90】【插屏1024*768】【对联300*600】【激励视频1024*768】【信息流】【嵌入式】

开屏广告

开屏广告位一般在Start()方法中调用。

public async void ShowFullscreendAd()
{
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//MediaType:设置广告类型图片="image",网页="web",视频="video"
AsyncResult asyncResult =await AdvertisingManager._instance.ShowAD(unitid,AdType.FullScreen,new FullScreenAdSettingOptions { MediaType= "image" });
if (asyncResult.ReturnValue)
{
Debug.Log("广告展示完成");
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}

退屏广告

      退屏广告是在退出游戏时触发,为了保证退出游戏时广告的弹出率,MG会分两步完成退屏广告的实现

      1.在初始化完成后,将退屏广告的信息加载到内存中

      2.在退出游戏时,直接打开退屏广告

public void ShowExitAD()
{
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
AdvertisingManager._instance.ShowExitAdBlocking("unitid");
}

横幅广告

public async void ShowBannerAd()
{
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//MediaType:设置广告类型图片="image",网页="web"
AsyncResult asyncResult = await AdvertisingManager._instance.ShowAD(unitid, AdType.Banner, new BannerAdSettingOptions {MediaType= "web"});
if (asyncResult.ReturnValue)
{
Debug.Log("广告展示完成");
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}

插屏广告

public async void ShowInterstitialAd()
{
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//MediaType:设置广告类型图片="image",网页="web",视频="video"
AsyncResult asyncResult = await AdvertisingManager._instance.ShowAD(unitid, AdType.Interstitial,new InterstitialAdSettingOptions { MediaType= "image" });
if (asyncResult.ReturnValue)
{
Debug.Log("广告展示完成");
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}

对联广告

public async void ShowCoupletAD()
{
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//MediaType:设置广告类型图片="image",网页="web"
AsyncResult asyncResult = await AdvertisingManager._instance.ShowAD(unitid, AdType.Couplet,new CoupletAdSettingOptions { MediaType= "image" });
if (asyncResult.ReturnValue)
{
Debug.Log("广告展示完成");
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}

激励视频

public async void ShowRewardAD()
{
string comment = "id123,abc,$9.99";//透传参数,需url编码
comment = Uri.EscapeDataString(comment);
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//MediaType:设置广告类型视频="video",网页="web"
RewardAdSettingOptions adsettingOptions = new RewardAdSettingOptions();
adsettingOptions.MediaType = "web";
adsettingOptions.Comment = comment;
AsyncResult asyncResult = await AdvertisingManager._instance.ShowAD(unitid, AdType.Reward, adsettingOptions);
if (asyncResult.ReturnValue)
{
//向MG汇报激励广告奖励已发放
AdvertisingManager._instance.ReportAdRewardFulfillment(asyncResult.rewardAdInfo);
Debug.Log("广告展示完成,奖励信息为:"+ asyncResult.rewardAdInfo.rewardADcomment);
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}

信息流

信息流广告需要开发者指定广告的尺寸和坐标。

public async void ShowInformationFlowAD()
{
Vector3 vector3 = new Vector3(-119, 185, 0);
Vector2 vector2 = new Vector2(200, 50);

// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//parentTransform:信息流广告需要展示的位置,(必传)
//vector2Size:信息流广告的尺寸(必传)
//vector3Coordinate:信息流广告的坐标(必传)
//media:设置广告类型图片="image",网页="web",视频="video"

InformationFlowAdSettingOptions adSettingOptions = new InformationFlowAdSettingOptions();
adSettingOptions.parentTransform = adtransform;
adSettingOptions.vector2Size = vector2;
adSettingOptions.vector3Coordinate = vector3;
adSettingOptions.MediaType = "image";

AsyncResult asyncResult = await AdvertisingManager._instance.ShowAD(unitid, AdType.InformationFlow, adSettingOptions);
if (asyncResult.ReturnValue)
{
Debug.Log("广告展示完成");
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}

嵌入式

嵌入式广告需要开发者指定广告的尺寸和坐标。

 public async void ShowEmbeddedAD()
{
Vector3 vector3 = new Vector3(213, -76, 0);
Vector2 vector2 = new Vector2(200, 200);
// 参数:
//unitid:需要传入广告key,广告key来自MG广告后台创建。(必传)
//adtype:广告类型 1.开屏 3.Banner 4.插屏 5.对联 6.激励视频 7.信息流 8.嵌入式(必传)
//parentTransform:嵌入式广告需要展示的位置(必传)
//vector2Size:嵌入式广告的尺寸(必传)
//vector3Coordinate:嵌入式广告的坐标(必传)
//MediaType:设置广告类型图片="image",网页="web",视频="video"

EmbeddedAdSettingOptions adSettingOptions = new EmbeddedAdSettingOptions();
adSettingOptions.parentTransform = adtransform;
adSettingOptions.vector2Size = vector2;
adSettingOptions.vector3Coordinate = vector3;
adSettingOptions.MediaType = "image";

AsyncResult asyncResult = await AdvertisingManager._instance.ShowAD(unitid, AdType.Embedded, adSettingOptions);
if (asyncResult.ReturnValue)
{
Debug.Log("广告展示完成");
}
else
{
Debug.Log(asyncResult.ErrorMessage);
}
}