穿山甲gromore -九游会j9备用网址

webapp快捷打包
穿山甲gromore
转到模块插件

敬告:此 demo 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,九游会j9备用网址-j9九游会登录入口首页新版

js-sdk 引用方式:

♦ 普通网页 script 方式加载:下载最新版 jsbridge-v20250416.zip,请在页面上调用 jsbridge 接口之前引用 jsbridge-mini.js 库;

♦ js module 方式引用:npm install ym-jsbridge

♦ 今日头条 ,去申请接入 ;

事件监听

setlistener 设置监听器

• 如需接口调用事件,请设置此监听器;

jsbridge.ttgm.setlistener(function(event, data) {
    switch (event) {
        //激励视频 jsbridge.ttgm.reward(...)
        case "reward": {
            switch (data.action) {
                //加载功取
                case "onrewardvideoadload": {
                    break;
                }
                //缓冲完成
                case "onrewardvideocached": {
                    break;
                }
                //加载失败,data.message 为失败说明
                case "onrewardvideoloadfail": {
                    break;
                }
                //激励达成
                case "onrewardverify": {
                    break;
                }
                //点击
                case "onrewardclick": {
                    break;
                }
                //关闭
                case "onrewardedadclosed": {
                    break;
                }
                //展示
                case "onrewardedadshow": {
                    break;
                }
                //展示失败
                case "onrewardedadshowfail": {
                    break;
                }
                //跳过
                case "onskippedvideo": {
                    break;
                }
                //播放完成
                case "onvideocomplete": {
                    break;
                }
                //视频错误
                case "onvideoerror": {
                    break;
                }
            }
            break;
        }
        //插全屏 jsbridge.ttgm.interstitialfull(...)
        case "interstitialfull": {
            switch (data.action) {
                //加载功取
                case "oninterstitialfulladload": {
                    break;
                }
                //缓冲完成
                case "oninterstitialfullcached": {
                    break;
                }
                //加载失败,data.message 为失败说明
                case "oninterstitialfullloadfail": {
                    break;
                }
                //激励达成
                case "onrewardverify": {
                    break;
                }
                //此方法会在用户点击打开其他应用(例如 google play)时于 onadopened() 之后调用
                case "onadleftapplication": {
                    break;
                }
                case "onadopened": {
                    break;
                }
                //点击
                case "oninterstitialfullclick": {
                    break;
                }
                //关闭
                case "oninterstitialfullclosed": {
                    break;
                }
                //展示
                case "oninterstitialfullshow": {
                    break;
                }
                //展示失败
                case "oninterstitialfullshowfail": {
                    break;
                }
                //跳过视频播放(针对全屏广告)
                case "onskippedvideo": {
                    break;
                }
                //视频播放完毕(针对全屏广告)
                case "onvideocomplete": {
                    break;
                }
                //视频播放失败(针对全屏广告)
                case "onvideoerror": {
                    break;
                }
            }
            break;
        }
        //banner jsbridge.ttgm.banner(...)
        case "banner": {
            switch (data.action) {
                //加载成功
                case "onadloaded": {
                    break;
                }
                //加载失败,data.message 为失败说明
                case "onadfailedtoload": {
                    break;
                }
                //点击
                case "onadclicked": {
                    break;
                }
                //关闭
                case "onadclosed": {
                    break;
                }
                //此方法会在用户点击打开其他应用(例如 google play)时于 onadopened() 之后调用
                case "onadleftapplication": {
                    break;
                }
                case "onadopened": {
                    break;
                }
                //展示
                case "onadshow": {
                    break;
                }
                //展示失败
                case "onadshowfail": {
                    break;
                }
            }
            break;
        }
    }
    //此函数仅用于显示回调参数在本 demo 页面上
    showresult({
        event: event,
        data: data
    });
});
//请拉到页面底部查看回调数据信息
$('html,body').animate({ scrolltop: $('#view').offset().top }, 500);
/**
回调参数说明:
event - 事件代码,字符串
data  - 事件数据,json 对象
**/

removelistener 移除监听器

//移除监听器,不会再收到回调通知
//在需要时可重新调用 setlistener
jsbridge.ttgm.removelistener();

requestpermissionifnecessary 请求权限

//非必须的,即使没有权限也不影响广告展示
//但建议请求权限,可优化投放广告精准度和用户的交互体验,提高ecpm
jsbridge.ttgm.requestpermissionifnecessary();

展示广告

reward 激励视频

codeid:

orientation:

//如果拉起广告失败,请参考  说明
jsbridge.ttgm.reward({
  //字符串,广告位 id
  codeid: "{{reward.codeid}}",
  //字符串,屏幕方向,与广告位的设置一致
  //vertical   竖屏
  //horizontal 横屏
  orientation: "{{reward.orientation}}",
  //字符串,激励奖品名称
  rewardname: "金币",
  //数字,激励奖品数量
  rewardamount: 5,
  //字符串,用户id
  userid: "user123",
  //字符串,任意自定义数据
  //一般用于 
  customdata: ""
}, function(succ, res) {
  if (!succ) {
    alert(json.stringify(res));
  }
});

interstitialfull 插全屏、全屏视频

codeid:

orientation:

jsbridge.ttgm.interstitialfull({
  //字符串,广告位 id
  codeid: "{{interstitialfull.codeid}}",
  //字符串,屏幕方向,与广告位的设置一致
  //vertical   竖屏
  //horizontal 横屏
  orientation: "{{interstitialfull.orientation}}",
  //字符串,激励奖品名称
  rewardname: "金币",
  //数字,激励奖品数量
  rewardamount: 5,
  //字符串,用户id
  userid: "user123"
}, function(succ, res) {
  if (!succ) {
    alert(json.stringify(res));
  }
});

banner banner1

codeid:

jsbridge.ttgm.banner({
  //字符串,广告位 id
  codeid: "{{banner.codeid}}",
  //数字,到顶部的距离
  top   : 20,
  //数字,宽度 
  width : 320,
  //数字,高度
  height: 100,
  //字符串,用户id
  userid: "user123"
}, function(succ, res) {
  if (!succ) {
    alert(json.stringify(res));
  }
});

banner banner2

codeid:

jsbridge.ttgm.banner({
  //字符串,广告位 id
  codeid: "{{banner.codeid}}",
  //数字,到底部的距离
  bottom: 20,
  //数字,宽度 
  width : 320,
  //数字,高度
  height: 100,
  //字符串,用户id
  userid: "user123"
}, function(succ, res) {
  if (!succ) {
    alert(json.stringify(res));
  }
});

banner banner - 关闭

jsbridge.ttgm.banner({
  remove: true
}, function(succ, res) {
  if (!succ) {
    alert(json.stringify(res));
  }
});

preload 预加载

//一般情况在穿山甲后台开启广告位预缓存功能使用 show/close 缓存机制就可以了
//本 preload 接口主要用于冷启动 app 时预加载首次展示广告,具体说明
jsbridge.ttgm.preload({
  //激励视频
  //参数应跟调用 reward 接口时一致,否则无法命中缓存 
  reward: {
    //激励视频广告位 id 列表
    codeidlist: [ "1111111111", "2222222222" ],
    orientation: "vertical",
    rewardname: "金币",
    rewardamount: 5,
    userid: "user123",
    customdata: ""
  },
  //插全屏、全屏视频
  //参数应跟调用 interstitialfull 接口时一致,否则无法命中缓存 
  interstitialfull: {
    //插全屏、全屏视频广告位 id 列表
    codeidlist: [ "3333333333", "4444444444" ],
    orientation: "vertical",
    rewardname: "金币",
    rewardamount: 5,
    userid: "user123"
  },
  //并行加载的广告位数,默认值为2,合法值为[1,20]
  parallelnum: 2,
  //时间间隔,默认值为2s,合法值为[1,10]
  interval: 2
}, function(succ, res) {
  alert(succ ? "处理成功" : `处理失败 ${json.stringify(res)}`);
});

launchtesttools 测试工具

//仅支持 android 版
//请进入 设置 - 安卓打包设置 - 开启调试模式 后重新生成新版安装,否则此 js 接口不可用!
//测试通过后,发布正式版时请关闭调试模式!
jsbridge.ttgm.launchtesttools(function(succ, res) {
  if (!succ) {
    alert(json.stringify(res));
  }
});

监听回调数据:

网站地图