当前位置: 首页 > news >正文

升级TTSDK抖音小游戏banner广告接入

升级TTSDK抖音小游戏banner广告接入

  • 介绍
  • 修改
  • 总结

介绍

在这里插入图片描述
我们原来使用的是unity2021,这次为了抖音新出的TTSDK中的新的API升级我们将项目升级为了unity2022,这次抖音官方剔除了原来StartSDKUnityTools和Start Asset Analyser(startmini)这两个部分,这次升级之后广告这块的修改我在做一下记录。

如果有不知道原来怎么接入广告的可以看我后面这篇文章。原广告接入文章

修改

TTSDK的升级这块我就不多说了,抖音官方这块写的比较清楚,我就把广告这块重新修复一下。

广告管理脚本如下

using UnityEngine;
using TTSDK;

public delegate void OnVideoAdCloseCallBack();
public delegate void OnVideoAdErrorCallBack();


public class ByteGameAdManager : MonoBehaviour
{
    private static ByteGameAdManager _instance;

    public static ByteGameAdManager Instance
    {
        get
        {
            if (_instance == null)
            {
                _instance = new GameObject("ByteGameAdManager").AddComponent<ByteGameAdManager>();
                DontDestroyOnLoad(_instance.gameObject);
            }

            return _instance;
        }
    }

    private void Awake()
    {
        _instance = this;
        DontDestroyOnLoad(_instance.gameObject);
        //if (Application.isEditor)
        //    MockSetting.OpenAllMockModule();
    }

    /// <summary>
    /// banner视频
    /// </summary>
    /// <param name="adId">广告位id</param>
    /// <param name="bS">样式</param>
    /// <param name="IntervalTime">间隔时间必须大于等于30</param>
    /// <param name="errCallBack">错误回调</param>
    /// <param name="loadEdCallback">加载完成回调</param>
    /// <param name="resizeCallBack">重新设置大小回调</param>
    /// <param name="closeCallBack">关闭回调</param>
    /// <returns></returns>
    public TTBannerAd CreateBanner(string adId, TTBannerStyle bS, int IntervalTime, System.Action<int, string> errCallBack, System.Action loadEdCallback, System.Action<int, int> resizeCallBack, System.Action closeCallBack)
    {
        return TT.CreateBannerAd(adId,bS,IntervalTime, errCallBack, loadEdCallback, resizeCallBack, closeCallBack);
    }

    /// <summary>
    /// 播放激励视频广告
    /// </summary>
    /// <param name="adId"></param>
    /// <param name="closeCallBack"></param>
    /// <param name="errorCallBack"></param>
    public TTRewardedVideoAd ShowVideoAd(string adId, System.Action<bool,int> closeCallBack, System.Action<int, string> errorCallBack)
    {
        return TT.CreateRewardedVideoAd(adId, closeCallBack, errorCallBack);
    }

    /// <summary>
    /// 播放激励视频广告
    /// </summary>
    /// <param name="adId"></param>
    /// <param name="closeCallBack"></param>
    /// <param name="errorCallBack"></param>
    public TTRewardedVideoAd ShowVideoAdNew(string adId)
    {
        return TT.CreateRewardedVideoAd(new CreateRewardedVideoAdParam() { AdUnitId = adId });
    }

    /// <summary>
    /// 播放插屏广告
    /// </summary>
    /// <param name="adId"></param>
    /// <param name="errorCallBack"></param>
    /// <param name="closeCallBack"></param>
    public void ShowInterstitialAd(string adId, System.Action<int, string> errorCallBack, System.Action closeCallBack)
    {
        TT.CreateInterstitialAd(adId, errorCallBack, closeCallBack);
    }
}

测试调用如下

//创建激励视频广告
TTRewardedVideoAd r = ByteGameAdManager.Instance.ShowVideoAdNew("4sindh5hrbd75fe4a3");

//创建激励视频关闭回调
r.OnClose += (bol, val) =>
{
	Debug.LogError("关闭广告 ,是否已经看完" + bol);
	//看完广告获得提示
	if (bol)
	{

	}
};

//创建报错回调  
r.OnError += (code, errorMessage) =>
{
	Debug.LogError("code:" + code + "错误信息:" + errorMessage);
};

//展示广告(新版本必须调用,不然无法展示出来广告)
r.Show();

总结

感谢大家的支持!

http://www.dtcms.com/a/40847.html

相关文章:

  • ios swift摄像头画中画技术的探索与突破
  • Elasticsearch:使用阿里云 AI 服务进行嵌入和重新排名
  • 8.Dashboard的导入导出
  • VSCode轻松调试运行.Net 8.0 Web API项目
  • 如何使用豆包AI来快速提升编程能力?
  • 自然语言处理:稀疏向量表示
  • ASP.NET MVC AJAX 文件上传
  • OpenCV计算摄影学(6)高动态范围成像(HDR imaging)
  • 网站漏洞查找渗透测试攻防演练
  • 【easy视频 | day01】项目了解 + 登录注册 + 使用 token 作为客户端请求令牌
  • MySQL—Keepalived+MySQL双主复制实现MySQL高可用
  • 基于Rook的Ceph云原生存储部署与实践指南(上)
  • 第九章:多模态大语言模型
  • NL2SQL的应用-长上下文模型在处理NL2SQL任务时,相较于传统模型,有哪些显著的优势
  • CSS 日常开发常用属性总结
  • 数据结构:Top-K问题详解
  • AIGC和搜索引擎的异同
  • 在VSCode中使用MarsCode AI最新版本详解
  • drupal的导入的item-list在哪里查看
  • Java 面试题 20250227
  • 工业AR眼镜的‘芯’动力:FPC让制造更智能【新立电子】
  • PMP项目管理—整合管理篇—4.管理项目知识
  • P8772 [蓝桥杯 2022 省 A] 求和
  • Windows下安装redis-6.2版本及步骤
  • 为什么@Autowired 在属性上被警告,在 setter 方法上不被警告
  • Vue nextTick原理回顾
  • 第四届工程管理与信息科学国际学术会议 (EMIS 2025)
  • Node.js, Bun, Deno 比较概述
  • Nginx 报错:413 Request Entity Too Large
  • DeepSeek在昇腾上的模型部署 - 常见问题及解决方案