WebApp快捷打包
穿山甲GroMore
转到模块插件

敬告:此 DEMO 演示为开放测试页面,仅用于开发者快速测试体验应用功能,请严格遵守开发者协议,了解更多

JS-SDK 引用方式:

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

♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package

♦ 今日头条 穿山甲GroMore,去申请接入 GroMore

事件监听

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, data) {
  if (!succ) {
    alert(JSON.stringify(data));
  }
});

interstitialFull 插全屏

codeId:

orientation:

jsBridge.ttGm.interstitialFull({
  //字符串,广告位 ID
  codeId: "{{interstitialFull.codeId}}",
  //字符串,屏幕方向,与广告位的设置一致
  //VERTICAL   竖屏
  //HORIZONTAL 横屏
  orientation: "{{interstitialFull.orientation}}",
  //字符串,激励奖品名称
  rewardName: "金币",
  //数字,激励奖品数量
  rewardAmount: 5,
  //字符串,用户ID
  userId: "user123"
}, function(succ, data) {
  if (!succ) {
    alert(JSON.stringify(data));
  }
});

banner Banner1

codeId:

jsBridge.ttGm.banner({
  //字符串,广告位 ID
  codeId: "{{banner.codeId}}",
  //数字,到顶部的距离
  top   : 20,
  //数字,宽度 请参考
  width : 320,
  //数字,高度
  height: 100,
  //字符串,用户ID
  userId: "user123"
}, function(succ, data) {
  if (!succ) {
    alert(JSON.stringify(data));
  }
});

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, data) {
  if (!succ) {
    alert(JSON.stringify(data));
  }
});

监听回调数据: