敬告:此 demo 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,九游会j9备用网址-j9九游会登录入口首页新版。
♦ js-sdk 引用方式:
♦ 普通网页 script 方式加载:下载最新版 jsbridge-v20250416.zip,请在页面上调用 jsbridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge
事件监听
• 如需处理接口调用事件,请设置此监听器;
jsbridge.topon.setlistener(function(event, res) { switch (event) { //广告加载状态(所有接口都有的公共回调) //请参考 case "ad": { switch (res.action) { //开始加载 case "startloading": { break; } //加载完成 case "finishloading": { break; } //加载失败 case "failtoload": { break; } //加载广告源成功 case "finishloadingadsource": { break; } //加载广告源失败 case "failtoloadadsource": { break; } //开始出价 case "startbiddingadsource": { break; } //出价成功 case "finishbiddingadsource": { break; } //出价失败 case "failbiddingadsource": { break; } } break; } //激励视频 jsbridge.topon.reward(...) //请参考 case "reward": { switch (res.action) { //开始播放 case "startplaying": { break; } //结束播放 case "endplaying": { break; } //播放失败 case "failtoplay": { break; } //激励达成 case "rewardsuccess": { jsbridge.toast("奖励已达成!"); break; } //点击 case "click": { break; } //关闭 case "close": { break; } case "deeplinkorjump": { break; } case "againstartplaying": { break; } case "againendplaying": { break; } case "againfailtoplay": { break; } case "againclick": { break; } case "againrewardsuccess": { break; } } break; } //插屏广告 jsbridge.topon.interstitial(...) //请参考 case "interstitial": { switch (res.action) { //展示 case "show": { break; } //展示失败 case "failedtoshow": { break; } //播放开始 case "startplaying": { break; } //播放结束 case "endplaying": { break; } //播放失败 case "failtoplay": { break; } //点击 case "click": { break; } //关闭 case "close": { break; } case "deeplinkorjump": { break; } case "lpclose": { break; } } break; } //横幅广告 jsbridge.topon.banner(...) //请参考 case "banner": { switch (res.action) { //展示 case "show": { break; } //自动刷新 case "autorefresh": { break; } //自动刷新失败 case "failtoautorefresh": { break; } //点击 case "click": { break; } //关闭 case "close": { break; } case "deeplinkorjump": { break; } case "lpclose": { break; } } break; } } //此函数仅用于显示回调参数在本 demo 页面上 showresult({ event: event, res : res }); /** 回调参数 res 数据结构 { action: string, 动作名称 data: { adid : string, 广告位id error: undefined || string,失败时的错误信息 extra: undefined || object,附加信息 } } **/ }); //请拉到页面底部查看回调数据信息 $('html,body').animate({ scrolltop: $('#view').offset().top }, 500);
//移除监听器,不会再收到回调通知 //在需要时可重新调用 setlistener jsbridge.topon.removelistener();
广告
adid:
sceneid:
show:
//激励视频,setlistener 的监听回调 event 为 reward jsbridge.topon.reward({ //广告位id adid: "{{reward.adid}}", //场景id sceneid: "{{reward.sceneid}}", //加载或展示广告 //false 加载广告(不展示) //true 展示广告(需加载完成) show: {{reward.show}}, //可选,广告加载扩展参数,任意键值对 extra: { key1: "hello", key2: "world" } }, function(success, res) { if (!success) { if (res.errorcode == 2) { alert("not ready 广告未加载完成"); } else { alert(json.stringify(res)); } } });
adid:
sceneid:
show:
//激励视频,setlistener 的监听回调 event 为 reward jsbridge.topon.interstitial({ //广告位id adid: "{{interstitial.adid}}", //场景id sceneid: "{{interstitial.sceneid}}", //加载或展示广告 //false 加载广告(不展示) //true 展示广告(需加载完成) show: {{interstitial.show}}, //可选,广告加载扩展参数,任意键值对 extra: { key1: "hello", key2: "world" } }, function(success, res) { if (!success) { if (res.errorcode == 2) { alert("not ready 广告未加载完成"); } else { alert(json.stringify(res)); } } });
adid:
top:
sceneid:
show:
//横幅,setlistener 的监听回调 event 为 banner jsbridge.topon.banner({ //字符串类型,广告平台上申请的代码位id adid: "{{banner.adid}}", //场景id sceneid: "{{banner.sceneid}}", //加载或展示广告 //false 加载广告(不展示) //true 展示广告(需加载完成) show: {{banner.show}}, //数字类型,到顶部的距离 top: {{banner.top}}, //可选,广告加载扩展参数,任意键值对 extra: { key1: "hello", key2: "world" } }, function(success, res) { if (!success) { if (res.errorcode == 2) { alert("not ready 广告未加载完成"); } else { alert(json.stringify(res)); } } });
adid:
bottom:
//横幅,setlistener 的监听回调 event 为 banner jsbridge.topon.banner({ adid: "{{banner.adid}}", //场景id sceneid: "{{banner.userid}}", //加载或展示广告 //false 加载广告(不展示) //true 展示广告(需加载完成) show: {{banner.show}}, //数字类型,到底部的距离 bottom: {{banner.bottom}} }, function(succ, data) { if (!succ) { alert(json.stringify(data)); } });
//横幅 jsbridge.topon.banner({ remove: true }, function(succ, data) { if (!succ) { alert(json.stringify(data)); } });
监听回调数据: