激励广告
激励广告
激励广告是用户通过观看短视频,获取应用内奖励(游戏的复活,任务奖励,游戏金币)等,具体场景由开发者定义。
此章节将演示如何请求在Unity
环境下请求与展示激励广告
插件的namespace
为ZJSDK
,下文默认cs文件
已经声明了using ZJSDK;
注意
激励广告需要传入正确的用户ID,错误或空的用户ID会影响收益
请求激励广告
调用ZJSDKUnity#LoadRewardedAd(string posId, IAdLoadListener loadListener, string userId, bool isVolumeOn = true, string ext = "")
方法请求广告
public class ZJSDKUnity
{
/// <summary>
/// 请求激励广告
/// </summary>
/// <param name="posId">广告位ID,必传</param>
/// <param name="userId">用户ID,必传</param>
/// <param name="loadListener">加载回调</param>
/// <param name="isVolumeOn">是否开启声音,默认开启</param>
/// <param name="ext">透传信息</param>
public static void LoadRewardedAd(string posId, IAdLoadListener loadListener, string userId, bool isVolumeOn = true, string ext = "");
}
IAdLoadListener 说明
方法 | 说明 |
---|---|
OnAdLoaded() | 广告加载成功 |
OnAdLoadFailed(int code, string msg) | 广告加载出错 code: 错误码 msg: 错误信息 |
检查激励广告有效性
如果激励广告为预加载,需要在展示前调用ZJSDKUnity#IsRewardedAdValid()
方法判断当前缓存的广告对象是否有效,无效时需要重新请求广告
public class ZJSDKUnity
{
/// <summary>
/// 判断激励广告是否有效
/// </summary>
/// <returns>当前是否有可用的激励广告</returns>
public static bool IsRewardedAdValid();
}
展示激励广告
调用ZJSDKUnity#ShowRewardedAd(RewardedAdInteractionListener interactionListener)
方法,展示广告
public class ZJSDKUnity
{
/// <summary>
/// 展示激励广告
/// </summary>
public static void ShowRewardedAd(IRewardedAdInteractionListener interactionListener);
}
IRewardedAdInteractionListener 说明
方法 | 描述 |
---|---|
OnRewardedAdShow() | 广告展示 |
OnRewardedAdClick() | 广告点击 |
OnRewardVerify() | 广告播放达到要求会回调此方法 开发者需在此进行发奖 |
OnRewardedAdClose() | 广告关闭 |
OnRewardedAdShowError(int code, string msg) | 广告展示失败 code: 错误码 msg: 错误信息 |
激励广告接入示例
Resources/ZJDemoRes/Scripts/RewardedAdPopUI.cs
// 加载广告
public void LoadAndShowRewardAd()
{
// 请求激励广告
// 此处 userId 为必传参数(传入的格式可自行定义,也可以是MD5或加密后的,但必须保证是唯一值且不可过长),用于定位具体用户的广告观看情况
ZJSDKUnity.LoadRewardedAd(RewardedAdPosId, new RewardedAdLoadListener(this), "userId");
}
// IAdLoadListener 回调监听
class RewardedAdLoadListener : ZJSDKUnity.IAdLoadListener
{
public void OnAdLoaded()
{
ShowToast("广告加载成功");
// 广告加载成功后展示广告
ZJSDKUnity.ShowRewardedAd(new RewardedAdInteractionListener(this));
}
public void OnAdLoadFailed(int code, string msg)
{
ShowToast($"广告加载失败:\n\t\t错误码:{code}\t\t错误信息:{msg}");
}
}
// IRewardedAdInteractionListener 回调监听
public class RewardedAdInteractionListener : ZJSDKUnity.IRewardedAdInteractionListener
{
public void OnRewardedAdShowError(int code, string msg)
{
ShowToast($"激励广告展示失败\n\t\t错误码:{code}\t\t错误信息:{msg}");
}
public void OnRewardedAdShow()
{
ShowToast("激励广告展示");
}
public void OnRewardedAdClick()
{
ShowToast("激励广告点击")
}
public void OnRewardVerify()
{
ShowToast("激励广告发奖")
}
public void OnRewardedAdClose()
{
ShowToast("激励广告关闭")
}
}