广告接入指南
简介
MG Ads 支持【开屏1920*1080】【横幅728*90】【插屏640*640】【对联300*600】【激励视频1024*768】【退屏】
在调用广告的页面,引入我们的javascript文件
<script language="javascript" src="https://ad.mguwp.net/js/h5adsdk.js"></script>
开屏广告、退屏广告
开屏广告和退屏广告,仅修改【AppSetting.config】配置文件即可,开发者无需处理。
横幅、插屏、对联、激励视频广告
调用Miracle Games提供的JavaScript方法ShowAd(jsonParam)可以调用广告。参数如下:
| 参数名 | 参数描述 |
|---|---|
| jsonParam | 广告位参数,格式为json字符串。 * unitId = 广告位ID * adType = 广告位类型:3.Banner 4.插屏 5.对联 6.激励视频 * media = 指定素材类型:image,video,web;可传空。 * comment = 仅激励视频广告支持,透传参数,传递前进行urlencode。在广告关闭事件中会得到此参数。 |
function clientShowMgAd(unitId, adType, media, comment) {
var jsonParam = new Object();
jsonParam.unitId = unitId;
jsonParam.adType = adType;
if (media != undefined && media != "") {
jsonParam.media = media;//指定素材类型:image,video,web
}
if (comment != undefined && comment != "") {
jsonParam.comment = encodeURIComponent(JSON.stringify(comment));
}
ShowAd(JSON.stringify(jsonParam));//调用MG的广告接口
}
广告点击事件
MG 退屏广告的点击事件无法在客户端捕获,以下事件内容不涉及退屏广告。
玩家点击广告后,会调用JavaScript方法function AdClickEvent(param)。该方法需要开发者自已实现内部逻辑。demo中提供了该方法的示例代码。参数如下:
| 参数名 | 参数描述 | 示例 |
|---|---|---|
| unitId | 开发者传入的广告位ID | e333abaf22404c4a8d382c1e7ba42076 |
| resourceId | 资源Id | String |
| materialId | 素材 Id | String |
function AdClickEvent(param) {
var jsonObj = JSON.parse(param);
var unitId = jsonObj.unitId;
document.getElementById("txtResultMsg").value += ("AdClickEvent广告点击事件:广告位=" + unitId + ",其它:" + param + "\r\n");
}
广告关闭事件
MG 退屏广告的关闭事件无法在客户端捕获,以下事件内容不涉及退屏广告。
玩家关闭广告后,会调用JavaScript方法function AdCloseEvent(param)。该方法需要开发者自已实现内部逻辑。demo中提供了该方法的示例代码。参数如下:
| 参数名 | 参数描述 | 示例 |
|---|---|---|
| unitId | 开发者传入的广告位ID | e333abaf22404c4a8d382c1e7ba42076 |
| advertStatus | 广告位状态 | 1:广告正常;2:广告被后台关闭;3:没有广告素材 |
| 以下是仅激励视频广告拥有的参数 | ||
| completeStatus | 广告的播放状态 | 1:广告播放完毕,可以发奖励;0:广告未播放完毕 |
| comment | 由开发者传入的透传参数,经过 url 编码 | abc%2c123 |
| rewardId | 奖励的MG订单号,游戏发奖后向MG报告核销时使用 | String |
| resourceId | 资源Id | String |
| materialId | 素材 Id | String |
function AdCloseEvent(param) {
var jsonObj = JSON.parse(param);
var unitId = jsonObj.unitId;
//激励视频广告
if (unitId=="c10890b4cfbe4f41a450e87c1fb8c22a") {
var completeStatus = jsonObj.completeStatus;
var comment = jsonObj.comment;
var rewardId = jsonObj.rewardId;
var resourceId = jsonObj.resourceId;
var materialId = jsonObj.materialId;
if (completeStatus == 1) {//激励视频播放完成
//下放道具
alert("广告位:" + unitId + ",奖励Id:" + rewardId + "已经下放道具");
//资产核销,游戏道具下放成功后调用
var jsonParam = new Object();
jsonParam.unitId = unitId;
jsonParam.rewardId = rewardId;
jsonParam.resourceId = resourceId;
jsonParam.materialId = materialId;
ReportAdRewardFulfillment(JSON.stringify(jsonParam));//向MG报告
}
}
document.getElementById("txtResultMsg").value += ("AdCloseEvent广告关闭事件:广告位=" + unitId + ",其它:" + param + "\r\n");
}