敬告:此 demo 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议。
♦ js-sdk 引用方式:
♦ 普通网页 script 方式加载:下载最新版 ,请在页面上调用 jsbridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge
• 如需接口调用事件,请设置此监听器;
jsbridge.gad.setlistener(function(event, data) {
switch (event) {
//激励广告 jsbridge.gad.reward(...)
case "reward": {
switch (data.action) {
//广告加载成功
case "onadloaded": {
break;
}
//展示
case "onadshowedfullscreencontent": {
break;
}
//关闭
case "onaddismissedfullscreencontent": {
break;
}
case "onadimpression": {
break;
}
//点击
case "onadclicked": {
break;
}
//展示失败
case "onadfailedtoshowfullscreencontent": {
break;
}
//激励视频触发激励(观看视频大于一定时长或者视频播放完毕)
//可以在此回调中发放奖励
//建议接入
case "onuserearnedreward": {
jsbridge.toast("奖励已达成!");
break;
}
//广告流程失败
case "onadfailedtoload": {
break;
}
}
break;
}
//插页式广告 jsbridge.gad.interstitial(...)
case "interstitial": {
switch (data.action) {
//广告加载成功
case "onadloaded": {
break;
}
//展示
case "onadshowedfullscreencontent": {
break;
}
//关闭
case "onaddismissedfullscreencontent": {
break;
}
case "onadimpression": {
break;
}
//点击
case "onadclicked": {
break;
}
//展示失败
case "onadfailedtoshowfullscreencontent": {
break;
}
//广告流程失败
case "onadfailedtoload": {
break;
}
}
break;
}
//插页式激励广告 jsbridge.gad.rewardinterstitial(...)
case "rewardinterstitial": {
switch (data.action) {
//广告加载成功
case "onadloaded": {
break;
}
//展示
case "onadshowedfullscreencontent": {
break;
}
//关闭
case "onaddismissedfullscreencontent": {
break;
}
case "onadimpression": {
break;
}
//点击
case "onadclicked": {
break;
}
//展示失败
case "onadfailedtoshowfullscreencontent": {
break;
}
//激励视频触发激励(观看视频大于一定时长或者视频播放完毕)
//可以在此回调中发放奖励
//建议接入
case "onuserearnedreward": {
jsbridge.toast("奖励已达成!");
break;
}
//广告流程失败
case "onadfailedtoload": {
break;
}
}
break;
}
}
//此函数仅用于显示回调参数在本 demo 页面上
showresult({
event: event,
data : data
});
});
//请拉到页面底部查看回调数据信息
$('html,body').animate({ scrolltop: $('#view').offset().top }, 500);
/**
回调参数说明:
event - 事件代码,字符串类型
data - 事件数据,json 对象
**/
//移除监听器,不会再收到回调通知 //在需要时可重新调用 setlistener jsbridge.gad.removelistener();
广告接口
adid:
userid:
extra:
//,监听 event 为 reward
//建议接入
jsbridge.gad.reward({
//必须,激励广告 id
adid: "{{reward.adid}}",
//用户标识,一般为用户账号id,以便在处理服务器通知时给此用户发放奖励
userid: "{{reward.userid}}",
//附加信息,任意字符串,一般用于服务器端验证回调时使用
extra: "{{reward.extra}}"
}, function(success, res) {
if (!success) {
alert(json.stringify(res));
}
});
adid:
//,监听 event 为 interstitial
jsbridge.gad.interstitial({
//必须,插页式广告 id
adid: "{{interstitial.adid}}"
}, function(success, res) {
if (!success) {
alert(json.stringify(res));
}
});
adid:
userid:
extra:
//,监听 event 为 rewardinterstitial
//建议接入
jsbridge.gad.rewardinterstitial({
//必须,激励广告 id
adid: "{{rewardinterstitial.adid}}",
//用户标识,一般为用户账号id,以便在处理服务器通知时给此用户发放奖励
userid: "{{rewardinterstitial.userid}}",
//附加信息,任意字符串,一般用于服务器端验证回调时使用
extra: "{{rewardinterstitial.extra}}"
}, function(success, res) {
if (!success) {
alert(json.stringify(res));
}
});
激励广告 adid:
//引用 js 库
//import jsbridge from 'ym-jsbridge'
const showreward = function (jsbridge) {
//设置监听器
jsbridge.gad.setlistener(function (event, data) {
switch (event) {
//激励广告
case "reward": {
switch (data.action) {
//展示成功
case "onadshowedfullscreencontent": {
//关闭加载动画
layer.closeall();
break;
}
//加载失败
case "onadfailedtoload":
//展示失败
case "onadfailedtoshowfullscreencontent": {
//关闭加载动画
layer.closeall();
//提示失败
layer.msg(`失败:${json.stringify(data)}`);
break;
}
//激励达成
case "onuserearnedreward": {
//奖励达成,客户端仅做简单提示;
//为避免刷单,强烈建议在处理服务器端通知时发放奖励;
jsbridge.toast("奖励已达成!");
break;
}
}
break;
}
}
});
//展示广告
jsbridge.gad.reward({
//激励广告 id
adid: "{{reward.adid}}",
userid: "{{reward.userid}}",
extra: "{{reward.extra}}"
}, function (success, res) {
if (success) {
//执行成功,拉取广告需要一点时间,显示加载动画
layer.load(0, { shade: 0.2 });
} else {
//执行失败
layer.alert(json.stringify(res));
}
});
};
showreward(jsbridge);
监听回调数据: